Estás viendo la documentación de Apigee Edge.
Ve a la
Documentación de Apigee X. información
InvalidConnectorInstance
Mensaje de error
La implementación del proxy de API a través de la IU de Edge o de la API de Edge Management falla y muestra el siguiente mensaje de error:
Error Saving Revision revision_number In policy_name: Connector must not be empty.
Ejemplo de mensaje de error
Error Saving Revision 1 In Extension Callout-1: Connector must not be empty.
Captura de pantalla de error de ejemplo
Causa
Este error se produce si falta el elemento <Connector>
en la Política de ExtensionCallout o está configurado en un valor vacío.
Diagnóstico
Identifique el nombre de la política de ExtensionCallout en el mensaje de error. Por ejemplo, en el siguiente error, el nombre de la política de ExtensionCallout es
Extension Callout-1
:Error Saving Revision 1 In Extension Callout-1: Connector must not be empty
Examina el XML de la política ExtensionCallback con error y verifica si el elemento
<Connector>
está presente y no está vacío. Por ejemplo, en la siguiente política, el elemento<Connector>
está vacío y no contiene el nombre de la extensión:<?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>
Dado que el elemento <Connector>
está vacío, la implementación del proxy de API falla.
Solución
Asegúrese de que siempre se especifique el valor para el elemento <Connector>
de la política de Extension Callout y coincida con el nombre de la extensión real creada en la organización.
Para corregir la política de ExtensionCallout de ejemplo que se muestra arriba, puedes establecer el elemento <Connector>
en el nombre de la extensión que existe en el entorno específico en el que se implementa el proxy de API.
Para determinar el nombre de la extensión, en la IU de Edge puedes navegar a Administrador > Extensiones. Allí se mostrarán los nombres de todas las extensiones de tu organización. El nombre de la extensión se debe establecer en el elemento <Connector>
.
A continuación, se muestra un ejemplo con el nombre de la extensión configurado correctamente en el elemento <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
Mensaje de error
La implementación del proxy de API a través de la IU de Edge o de la API de Edge Management falla y muestra el siguiente mensaje de error:
Error Deploying Revision revision_number to environment In policy_name: Connector <extension_name> does not exist in environment environment.
Ejemplo de mensaje de error
Error Deploying Revision 1 to test In Extension Callout-1: Connector cloud_storage does not exist in environment test.
Captura de pantalla de error de ejemplo
Causa
Este error se produce si el elemento <Connector>
de la política ExtensionCallout se establece en un nombre que no existe en el entorno en el que se implementa el proxy de API.
Diagnóstico
Identifique el nombre de la política de extensión de texto destacado, el nombre de la extensión no válido que se usó en el elemento
<Connector>
de la política de ExtensionCallout y el entorno en el que se produjo el error. Puedes encontrar todos estos elementos en el mensaje de error.Por ejemplo, en el siguiente error, el nombre de la política de ExtensionCallout es
Extension Callout-1,
invalid
name de la extensión escloud_storage
, y el nombre del entorno estest
:Error Deploying Revision 1 to test In Extension Callout-1: Connector cloud_storage does not exist in environment test.
Examina el XML de la política ExtensionAviso que falló y verifica si el nombre de extensión especificado para el elemento
<Connector>
coincide con lo que aparece en el mensaje de error.En este ejemplo, el nombre de la extensión especificado en el elemento
<Connector>
escloud_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>
Verifica si el nombre de la extensión se creó en el entorno (determinado en el paso 1).
En la IU de Edge, navega a Administrador > Extensiones y verifica si la extensión existe y si el nombre coincide con el que se especificó en el elemento
<Connector>
en la política Extension;">.En la captura de pantalla a continuación, observa que la extensión
cloud_storage_ext
existe, pero no coincide con el elemento<Connector>
especificado en la política Extension preferida de ejemplo que se muestra arriba:Dado que el nombre de la extensión especificado en el elemento
<Connector>
no existe, verás el siguiente error de implementación:In Extension Callout-1: Connector cloud_storage does not exist in environment test.
Solución
Asegúrese de que la extensión especificada en el elemento <Connector>
de la política de ExtensionCallout se haya creado y que el nombre se especifique correctamente.
Para obtener información sobre cómo crear una extensión, consulta el Instructivo para usar extensiones.
Para corregir el ejemplo anterior, corrige el nombre de modo que coincida con la extensión real:
<?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
Mensaje de error
La implementación del proxy de API a través de la IU de Edge o de la API de Edge Management falla y muestra el siguiente mensaje de error:
Error Saving Revision revision_number In policy_name: Action must not be empty.
Ejemplo de mensaje de error
Error Saving Revision 1 In Extension Callout-1: Action must not be empty.
Captura de pantalla de error de ejemplo
Causa
Este error se produce si falta el elemento <Action>
en la Política de ExtensionCallout o está configurado en un valor vacío.
Diagnóstico
Identifique el nombre de la política de ExtensionCallout. Puedes encontrar esta información en el mensaje de error. Por ejemplo, en el siguiente error, el nombre de la política de ExtensionCallout es
Extension Callout-1:
Error Saving Revision 1 In Extension Callout-1: Action must not be empty.
Examina el XML de la política ExtensionAviso que falló y verifica si se especificó la acción en el elemento
<Action>
. Si falta el elemento<Action>
o está vacío, esa es la causa del error.En este ejemplo, el elemento
<Action>
está vacío:<?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>
Solución
Asegúrate de que el elemento <Action>
siempre esté especificado y no esté vacío en la política de ExtensionCallout.
Consulta el Instructivo: Cómo usar extensiones para obtener información sobre cómo crear una extensión y cómo usarla en la política con el elemento <Action>
correcto.
Para solucionar el problema anterior, especifica la acción correcta para la extensión:
<?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
Mensaje de error
La implementación del proxy de API a través de la IU de Edge o de la API de Edge Management falla y muestra el siguiente mensaje de error:
Error Deploying Revision revision_number to environment In policy_name: Policy is not allowed in PostClientFlow.
Ejemplo de mensaje de error
Error Deploying Revision 1 to test In Extension Callout-1: Policy is not allowed in PostClientFlow.
Captura de pantalla de error de ejemplo
Causa
Se prohíbe tener una política de ExtensionCallout en un flujo de PostClient. Si se establece una política ExtensionCallout en un flujo de PostClient, la implementación del proxy de API falla con este error.
Diagnóstico
Identifique el nombre de la política de ExtensionCallout. Puedes encontrar esta información en el mensaje de error. Por ejemplo, en el siguiente error, el nombre de la política de ExtensionCallout es
Extension Callout-1:
In Extension Callout-1: Policy is not allowed in PostClientFlow.
Examina todos los flujos PostClient en todos los extremos del proxy de API específico donde se produjo el error. Consulta el artículo Controla la ejecución de un proxy con flujos.
Si observa que la política ExtensionReference (determinada en el paso 1) se coloca en el flujo PostClient, esa es la causa del error.
Por ejemplo, el siguiente flujo de PostClient tiene la política Extension preferida:
... <PostClientFlow> <Request/> <Response> <Step> <Name>Extension-Callout-1</Name> </Step> </Response> </PostClientFlow> ...
Solución
Asegúrate de que la política de ExtensionCallout no se coloque en el flujo PostClient.
Para solucionar el problema mencionado anteriormente, debe mover la política de ExtensionCallout a cualquier otro flujo.
... <PreFlow name="PreFlow"> <Request/> <Response> <Step> <Name>Extension-Callout-1</Name> </Step> </Response> </PreFlow> ...