Risoluzione dei problemi di errore di deployment dei criteri di callout del servizio

Stai visualizzando la documentazione di Apigee Edge.
Vai alla sezione Documentazione di Apigee X.
Informazioni

URLMissing

Messaggio di errore

Il deployment del proxy API tramite la UI o l'API di gestione perimetrale non va a buon fine e questo messaggio di errore:

Error Saving Revision [revision_number]
URL is missing in Step [policy_name]

Esempio di messaggio di errore

Error Saving Revision 2
URL is missing in Step ExecuteGeocodingRequest.

Screenshot di esempio

Causa

Se l'elemento <URL> nel criterio callout di servizio manca o viene lasciato vuoto, il deployment del proxy API non va a buon fine.

Diagnosi

Esamina l'elemento <URL> del criterio relativo al callout del servizio indicato nel messaggio di errore. Se all'interno dell'elemento non è stato dichiarato alcun URL, questo è la causa dell'errore. Ad esempio, le seguenti norme sui callout di servizio hanno un elemento <URL> vuoto:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<ServiceCallout name="ExecuteGeocodingRequest">
    <Request variable="GeocodingRequest"/>
    <Response>GeocodingResponse</Response>
    <HTTPTargetConnection>
        <URL></URL>
    </HTTPTargetConnection>
</ServiceCallout>

Poiché l'elemento <URL> è vuoto, il deployment del proxy API non va a buon fine.

Risoluzione

Assicurati che l'elemento <URL> nelle norme relative al callout di servizio abbia un URL valido. Ad esempio:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<ServiceCallout name="ExecuteGeocodingRequest">
    <Request variable="GeocodingRequest"/>
    <Response>GeocodingResponse</Response>
    <HTTPTargetConnection>
        <URL>http://maps.googleapis.com/maps/api/geocode/json</URL>
    </HTTPTargetConnection>
</ServiceCallout>

ConnectionInfoMissing

Messaggio di errore

Il deployment del proxy API tramite la UI o l'API di gestione perimetrale non va a buon fine e questo messaggio di errore:

Error Saving Revision [revision_number]
Connection information is missing in Step [policy_name]

Esempio di messaggio di errore

Error Saving Revision 1
Connection information is missing in Step ExecuteGeocodingRequest.

Screenshot di esempio

Causa

Se il criterio callout del servizio non include l'elemento <HTTPTargetConnection> o <LocalTargetConnection>, il deployment del proxy API non va a buon fine.

Diagnosi

Determina se per il criterio del callout di servizio è stato definito l'elemento <HTTPTargetConnection> o <LocalTargetConnection>. Ad esempio:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<ServiceCallout name="ExecuteGeocodingRequest">
    <Request variable="GeocodingRequest"/>
    <Response>GeocodingResponse</Response>
</ServiceCallout>

Tieni presente che nel criterio non è definito alcun elemento <HTTPTargetConnection> o <LocalTargetConnection>.

Risoluzione

Assicurati che il criterio relativo al callout di servizio includa l'elemento <HTTPTargetConnection> o <LocalTargetConnection>. Ad esempio:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<ServiceCallout name="ExecuteGeocodingRequest">
    <Request variable="GeocodingRequest"/>
    <Response>GeocodingResponse</Response>
    <HTTPTargetConnection>
        <URL>http://maps.googleapis.com/maps/api/geocode/json</URL>
    </HTTPTargetConnection>
</ServiceCallout>

InvalidTimeoutValue

Messaggio di errore

Il deployment del proxy API tramite l'interfaccia utente di Edge o l'API di gestione Edge ha esito negativo con questo messaggio di errore:

Error Saving Revision [revision_number]
Invalid Timeout value [0 or negative_number].

Esempio di messaggio di errore

Error Saving Revision 1
Invalid Timeout value -1.

Screenshot di esempio

Causa

Se per l'elemento <Timeout> nel criterio callout di servizio è specificato un valore zero o negativo, il deployment del proxy API non va a buon fine.

Diagnosi

Esamina l'elemento <Timeout> nel criterio relativo al callout del servizio. Se il valore è zero o un numero negativo, questa è la causa dell'errore. Ad esempio:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<ServiceCallout name="ExecuteGeocodingRequest">
    <Request variable="GeocodingRequest"/>
    <Response>GeocodingResponse</Response>
    <Timeout>0</Timeout>
    <HTTPTargetConnection>
        <URL>http://maps.googleapis.com/maps/api/geocode/json</URL>
    </HTTPTargetConnection>
</ServiceCallout>

Poiché l'elemento <Timeout> ha un valore pari a zero, il deployment del proxy non riesce.

Risoluzione

Assicurati che il valore specificato per l'elemento <Timeout> sia un numero diverso da zero o non negativo. Ad esempio:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<ServiceCallout name="ExecuteGeocodingRequest">
    <Request variable="GeocodingRequest"/>
    <Response>GeocodingResponse</Response>
    <Timeout>10</Timeout>
    <HTTPTargetConnection>
        <URL>http://maps.googleapis.com/maps/api/geocode/json</URL>
    </HTTPTargetConnection>
</ServiceCallout>