Stai visualizzando la documentazione di Apigee Edge.
Vai alla
documentazione di Apigee X. informazioni
InvalidConnectorInstance
Messaggio di errore
Il deployment del proxy API tramite l'UI o l'API di gestione perimetrale non riesce e genera questo messaggio di errore:
Error Saving Revision revision_number In policy_name: Connector must not be empty.
Esempio di messaggio di errore
Error Saving Revision 1 In Extension Callout-1: Connector must not be empty.
Screenshot di errore di esempio
Causa
Questo errore si verifica se l'elemento <Connector>
nelle norme ExtensionCallout non è presente o se è impostato su un valore vuoto.
Diagnostica
Identifica il nome delle norme relative ai callout nel messaggio di errore. Ad esempio, nel seguente errore, il nome della norma EstensioneCallout è
Extension Callout-1
:Error Saving Revision 1 In Extension Callout-1: Connector must not be empty
Esamina il codice XML del criterio ExtensionCallout non riuscito e verifica che l'elemento
<Connector>
sia presente e non vuoto. Ad esempio, nel criterio seguente l'elemento<Connector>
è vuoto e non contiene il nome dell'estensione:<?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>
Poiché l'elemento <Connector>
è vuoto, il deployment del proxy API non riesce.
Risoluzione
Assicurati che il valore dell'elemento <Connector>
del criterio Callout estensione sia sempre specificato e che corrisponda al nome dell'estensione effettiva creata nell'organizzazione.
Per correggere il criterio ExtensionCallout di esempio riportato sopra, puoi impostare l'elemento <Connector>
sul nome dell'estensione esistente nell'ambiente specifico in cui viene implementato il proxy API.
Per determinare il nome dell'estensione, nell'interfaccia utente di Edge puoi andare su Amministrazione > Estensioni. Qui verranno mostrati i nomi di tutte le estensioni dell'organizzazione. Il nome dell'estensione deve essere impostato nell'elemento <Connector>
.
Di seguito è riportato l'esempio in cui Nome estensione è impostato correttamente nell'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
Messaggio di errore
Il deployment del proxy API tramite l'UI o l'API di gestione perimetrale non riesce e genera questo messaggio di errore:
Error Deploying Revision revision_number to environment In policy_name: Connector <extension_name> does not exist in environment environment.
Esempio di messaggio di errore
Error Deploying Revision 1 to test In Extension Callout-1: Connector cloud_storage does not exist in environment test.
Screenshot di errore di esempio
Causa
Questo errore si verifica se l'elemento <Connector>
nel criterio ExtensionCallout è impostato su un nome che non esiste nell'ambiente in cui viene implementato il proxy API.
Diagnostica
Identifica il nome della norma ExtensionCallout, il nome dell'estensione non valido utilizzato nell'elemento
<Connector>
delle norme ExtensionCallout e l'ambiente in cui si è verificato l'errore. Puoi trovare tutte queste voci nel messaggio di errore.Ad esempio, nel seguente errore, il nome del criterio ExtensionCallout è
Extension Callout-1,
invalid
name dell'estensione ècloud_storage
e il nome dell'ambiente ètest
:Error Deploying Revision 1 to test In Extension Callout-1: Connector cloud_storage does not exist in environment test.
Esamina il codice XML del criterio ExtensionCallout non riuscito e verifica che il nome dell'estensione specificato per l'elemento
<Connector>
corrisponda al contenuto del messaggio di errore.In questo esempio, il nome dell'estensione specificato nell'elemento
<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>
Verifica se il nome dell'estensione è stato creato nell'ambiente (determinato nel passaggio 1).
Nell'interfaccia utente di Edge, vai ad Amministrazione > Estensioni e controlla se l'estensione esiste e il nome corrisponde a quello specificato nell'elemento
<Connector>
delle norme ExtensionCallout.Nello screenshot di seguito puoi vedere che l'estensione
cloud_storage_ext
esiste, ma non corrisponde all'elemento<Connector>
specificato nell'esempio di norma ExtensionCallout mostrata sopra:Poiché il nome dell'estensione specificato nell'elemento
<Connector>
non esiste, viene visualizzato l'errore di deployment:In Extension Callout-1: Connector cloud_storage does not exist in environment test.
Risoluzione
Assicurati che l'estensione specificata nell'elemento <Connector>
delle norme ExtensionCallout sia stata creata e che il nome sia specificato correttamente.
Per informazioni su come creare un'estensione, consulta Tutorial sull'utilizzo delle estensioni.
Per correggere l'esempio riportato sopra, correggi il nome in modo che corrisponda all'estensione effettiva:
<?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
Messaggio di errore
Il deployment del proxy API tramite l'UI o l'API di gestione perimetrale non riesce e genera questo messaggio di errore:
Error Saving Revision revision_number In policy_name: Action must not be empty.
Esempio di messaggio di errore
Error Saving Revision 1 In Extension Callout-1: Action must not be empty.
Screenshot di errore di esempio
Causa
Questo errore si verifica se l'elemento <Action>
nelle norme ExtensionCallout non è presente o se è impostato su un valore vuoto.
Diagnostica
Identifica il nome della norma ExtensionCallout. Puoi trovare queste informazioni nel messaggio di errore. Ad esempio, nel seguente errore, il nome della norma EstensioneCallout è
Extension Callout-1:
Error Saving Revision 1 In Extension Callout-1: Action must not be empty.
Esamina il codice XML del criterio ExtensionCallout non riuscito e verifica se l'azione è specificata nell'elemento
<Action>
. Se l'elemento<Action>
non è presente o è vuoto, questa è la causa dell'errore.In questo esempio, l'elemento
<Action>
è vuoto:<?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>
Risoluzione
Assicurati che l'elemento <Action>
sia sempre specificato e non vuoto nelle norme ExtensionCallout.
Per informazioni su come creare un'estensione e su come utilizzarla nel criterio con l'elemento <Action>
corretto, consulta l'articolo Tutorial: utilizzo delle estensioni.
Per risolvere il problema sopra indicato, specifica l'azione corretta per l'estensione:
<?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
Messaggio di errore
Il deployment del proxy API tramite l'UI o l'API Edge Management non riesce e restituisce questo messaggio di errore:
Error Deploying Revision revision_number to environment In policy_name: Policy is not allowed in PostClientFlow.
Esempio di messaggio di errore
Error Deploying Revision 1 to test In Extension Callout-1: Policy is not allowed in PostClientFlow.
Screenshot di errore di esempio
Causa
È vietato avere norme ExtensionsCallout in un flusso PostClient. Se un criterio ExtensionCallout viene inserito in un flusso PostClient, il deployment del proxy API non riesce e genera questo errore.
Diagnostica
Identifica il nome della norma ExtensionCallout. Puoi trovare queste informazioni nel messaggio di errore. Ad esempio, nel seguente errore, il nome della norma EstensioneCallout è
Extension Callout-1:
In Extension Callout-1: Policy is not allowed in PostClientFlow.
Esamina tutti i flussi Post-Client in tutti gli endpoint del proxy API specifico in cui si è verificato l'errore. Consulta l'articolo Controllo dell'esecuzione di un proxy con i flussi.
Se noti che le norme ExtensionCallout (determinate nel passaggio 1) vengono inserite nel flusso post-client, allora l'errore è questo.
Ad esempio, il seguente PostClient Flow contiene il criterio ExtensionCallout:
... <PostClientFlow> <Request/> <Response> <Step> <Name>Extension-Callout-1</Name> </Step> </Response> </PostClientFlow> ...
Risoluzione
Assicurati che il criterio ExtensionCallout non sia inserito nel flusso post-client.
Per risolvere il problema sopra menzionato, devi spostare le norme relative ai callout estensione in qualsiasi altro flusso.
... <PreFlow name="PreFlow"> <Request/> <Response> <Step> <Name>Extension-Callout-1</Name> </Step> </Response> </PreFlow> ...