您正在查看 Apigee Edge 說明文件。
查看 Apigee X 說明文件。 資訊
InvalidConnectorInstance
錯誤訊息
無法透過 Edge UI 或 Edge Management API 部署 API Proxy,並顯示以下錯誤訊息:
Error Saving Revision revision_number In policy_name: Connector must not be empty.
錯誤訊息範例
Error Saving Revision 1 In Extension Callout-1: Connector must not be empty.
錯誤螢幕截圖示例
原因
如果 ExtensionSummary 政策中的 <Connector>
元素缺少或設為空白值,就會發生這個錯誤。
診斷
找出錯誤訊息中的額外資訊摘要政策名稱。舉例來說,在下列錯誤中,ExtensionSummary 政策名稱會是
Extension Callout-1
:Error Saving Revision 1 In Extension Callout-1: Connector must not be empty
檢查失敗的額外資訊摘要政策 XML,確認
<Connector>
元素是否存在,且非空白。舉例來說,在下列政策中,<Connector>
元素是空的,沒有擴充功能的名稱:<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <ConnectorCallout async="false" continueOnError="true" enabled="true" name="Extension-Callout-1"> <DisplayName>Extension Callout-1</DisplayName> <Connector></Connector> <Action>downloadFile</Action> <Input><![CDATA[ {} ]]></Input> <Output>context-variable-name</Output> </ConnectorCallout>
由於 <Connector>
元素為空白,因此 API Proxy 的部署失敗。
解析度
請確保一律指定額外資訊摘要政策的 <Connector>
元素值,且與機構內建立的實際擴充功能名稱相符。
如要修正上述的 Extension callout 政策,您可以將 <Connector>
元素設為擴充功能的名稱,位於部署 API Proxy 的特定環境中。
如要判斷擴充功能的名稱,可以在 Edge UI 中依序前往「管理」>「擴充功能」。以及貴機構所有擴充功能的名稱。擴充功能名稱應在 <Connector>
元素中設定。
以下範例是在 <Connector>
元素中正確設定擴充功能名稱:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <ConnectorCallout async="false" continueOnError="true" enabled="true" name="Extension-Callout-1"> <DisplayName>Extension Callout-1</DisplayName> <Connector>cloud_storage_ext</Connector> <Action>downloadFile</Action> <Input><![CDATA[ {} ]]></Input> <Output>context-variable-name</Output> </ConnectorCallout>
ConnectorInstanceDoesNotExists
錯誤訊息
無法透過 Edge UI 或 Edge Management API 部署 API Proxy,並顯示以下錯誤訊息:
Error Deploying Revision revision_number to environment In policy_name: Connector <extension_name> does not exist in environment environment.
錯誤訊息範例
Error Deploying Revision 1 to test In Extension Callout-1: Connector cloud_storage does not exist in environment test.
錯誤螢幕截圖示例
原因
如果 Extension callout 政策中 <Connector>
元素設定的名稱不在部署 API Proxy 的環境中,就會發生這個錯誤。
診斷
找出額外資訊摘要政策名稱、擴充功能摘要政策
<Connector>
元素中使用的額外資訊名稱,以及發生錯誤的環境。您可以在錯誤訊息中找到上述所有項目。舉例來說,在下列錯誤中,擴充功能說明政策的名稱為
Extension Callout-1,
空白d
,環境名稱為cloud_storage
,環境名稱為test
:Error Deploying Revision 1 to test In Extension Callout-1: Connector cloud_storage does not exist in environment test.
檢查失敗的額外資訊摘要政策 XML,確認
<Connector>
元素指定的擴充功能名稱是否與錯誤訊息中的內容相符。在這個範例中,
<Connector>
元素中指定的擴充功能名稱為cloud_storage
:<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <ConnectorCallout async="false" continueOnError="true" enabled="true" name="Extension-Callout-1"> <DisplayName>Extension Callout-1</DisplayName> <Connector>cloud_storage</Connector> <Action>downloadFile</Action> <Input><![CDATA[ {} ]]></Input> <Output>context-variable-name</Output> </ConnectorCallout>
確認已在環境中建立擴充功能名稱 (如步驟 1 所示)。
在 Edge UI 中依序前往「管理員」>「擴充功能」 ,檢查擴充功能是否存在,以及與 Extension callout 政策
<Connector>
元素中指定的擴充功能相符。請注意,在下方螢幕截圖中,擴充功能
cloud_storage_ext
存在,但與上述範例 Extension callout 政策中指定的<Connector>
元素不符:您在
<Connector>
元素中指定的擴充功能名稱不存在,因此會收到部署錯誤:In Extension Callout-1: Connector cloud_storage does not exist in environment test.
解析度
請務必建立 Extension callout 政策 <Connector>
元素中指定的擴充功能,且指定名稱正確無誤。
如要瞭解如何建立擴充功能,請參閱「教學課程:使用擴充功能」一文。
如要修正上述範例,請修正名稱,使其與實際的副檔名相符:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <ConnectorCallout async="false" continueOnError="true" enabled="true" name="Extension-Callout-1"> <DisplayName>Extension Callout-1</DisplayName> <Connector>cloud_storage_ext</Connector> <Action>downloadFile</Action> <Input><![CDATA[ {} ]]></Input> <Output>context-variable-name</Output> </ConnectorCallout>
InvalidAction
錯誤訊息
無法透過 Edge UI 或 Edge Management API 部署 API Proxy,並顯示以下錯誤訊息:
Error Saving Revision revision_number In policy_name: Action must not be empty.
錯誤訊息範例
Error Saving Revision 1 In Extension Callout-1: Action must not be empty.
錯誤螢幕截圖示例
原因
如果 ExtensionSummary 政策中的 <Action>
元素缺少或設為空白值,就會發生這個錯誤。
診斷
找出額外資訊摘要政策名稱。您可以在錯誤訊息中找到這項資訊。舉例來說,在下列錯誤中,ExtensionSummary 政策名稱是
Extension Callout-1:
Error Saving Revision 1 In Extension Callout-1: Action must not be empty.
檢查失敗的額外資訊摘要政策 XML,確認
<Action>
元素中是否已指定動作。如果缺少<Action>
元素或元素為空白,就是導致錯誤的原因。在這個範例中,
<Action>
元素為空白:<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <ConnectorCallout async="false" continueOnError="true" enabled="true" name="Extension-Callout-1"> <DisplayName>Extension Callout-1</DisplayName> <Connector>cloud_storage_ext</Connector> <Action></Action> <Input><![CDATA[ {} ]]></Input> <Output>context-variable-name</Output> </ConnectorCallout>
解析度
確認 Extension callout 政策中一律指定 <Action>
元素且不得空白。
請參閱「教學課程:使用擴充功能」一文,瞭解如何建立擴充功能,以及如何在政策中搭配正確的 <Action>
元素使用擴充功能。
如要修正上述問題,請為擴充功能指定正確的動作:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <ConnectorCallout async="false" continueOnError="true" enabled="true" name="Extension-Callout-1"> <DisplayName>Extension Callout-1</DisplayName> <Connector>cloud_storage_ext</Connector> <Action>downloadFile</Action> <Input><![CDATA[ {} ]]></Input> <Output>context-variable-name</Output> </ConnectorCallout>
AllowExtensionsInPostClientFlow
錯誤訊息
無法透過 Edge UI 或 Edge Management API 部署 API Proxy,並顯示以下錯誤訊息:
Error Deploying Revision revision_number to environment In policy_name: Policy is not allowed in PostClientFlow.
錯誤訊息範例
Error Deploying Revision 1 to test In Extension Callout-1: Policy is not allowed in PostClientFlow.
錯誤螢幕截圖示例
原因
您無法在 PostClient 流程中設定額外資訊摘要政策。如果在 PostClient 流程中置入 Extension callout 政策,API Proxy 部署就會失敗,並顯示這個錯誤。
診斷
找出額外資訊摘要政策名稱。您可以在錯誤訊息中找到這項資訊。舉例來說,在下列錯誤中,ExtensionSummary 政策名稱是
Extension Callout-1:
In Extension Callout-1: Policy is not allowed in PostClientFlow.
在失敗的特定 API Proxy 所有端點中,檢查所有 PostClient 流程。請參閱控管 Proxy 與資料流執行的方式一文。
如果您發現第 1 步 (依步驟 #1 定義) 加入了額外資訊摘要政策,就是造成錯誤的原因。
舉例來說,下列 PostClient 流程中包含額外資訊摘要政策:
... <PostClientFlow> <Request/> <Response> <Step> <Name>Extension-Callout-1</Name> </Step> </Response> </PostClientFlow> ...
解析度
確認額外資訊摘要政策未放在 PostClient 流程中。
如要修正上述問題,請將額外資訊摘要政策移至任何其他流程。
... <PreFlow name="PreFlow"> <Request/> <Response> <Step> <Name>Extension-Callout-1</Name> </Step> </Response> </PreFlow> ...