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

Stai visualizzando la documentazione di Apigee e Apigee hybrid.
Visualizza Documentazione di Apigee Edge.

URLMissing

Messaggio di errore

Il deployment del proxy API tramite la UI o l'API Apigee non va a buon fine e viene visualizzato 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

Errore durante il salvataggio della revisione 2.

Causa

Se l'elemento <URL> nel criterio di callout del servizio non è presente o è 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 riesce.

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 Apigee non va a buon fine e viene visualizzato 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

Errore durante il salvataggio della revisione 1.

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 non è definito alcun elemento <HTTPTargetConnection> o <LocalTargetConnection> nel criterio.

Risoluzione

Assicurati che il criterio di callout del servizio contenga 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'API o l'interfaccia utente di Apigee non va a buon fine 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

Errore durante il salvataggio della revisione 1.

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, è 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>