Solucionar problemas de errores de implementación de la política Service Callout

Estás consultando la documentación de Apigee y Apigee Hybrid.
Consulta la documentación de Apigee Edge.

URLMissing

Mensaje de error

La implementación del proxy de API a través de la interfaz de usuario o la API de Apigee falla y se muestra este mensaje de error:

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

Ejemplo de mensaje de error

Error Saving Revision 2
URL is missing in Step ExecuteGeocodingRequest.

Captura de pantalla de ejemplo

No se ha podido guardar la revisión 2.

Causa

Si falta el elemento <URL> en la política Service Callout o se deja en blanco, se producirá un error al implementar el proxy de API.

Diagnóstico

Examina el elemento <URL> de la política Service Callout cuyo nombre se indica en el mensaje de error. Si no se ha declarado ninguna URL en el elemento, ese es el motivo del error. Por ejemplo, la siguiente política Service Callout tiene un elemento <URL> vacío:

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

Como el elemento <URL> está vacío, no se puede desplegar el proxy de API.

Resolución

Asegúrate de que el elemento <URL> de la política Service Callout tenga una URL válida. Por ejemplo:

<?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

Mensaje de error

La implementación del proxy de API a través de la interfaz de usuario o la API de Apigee falla y se muestra este mensaje de error:

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

Ejemplo de mensaje de error

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

Captura de pantalla de ejemplo

No se ha podido guardar la revisión 1.

Causa

Si la política Service Callout no tiene el elemento <HTTPTargetConnection> o <LocalTargetConnection>, la implementación del proxy de API fallará.

Diagnóstico

Determina si la política Service Callout tiene definido el elemento <HTTPTargetConnection> o <LocalTargetConnection>. Por ejemplo:

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

Ten en cuenta que no se ha definido ningún elemento <HTTPTargetConnection> ni <LocalTargetConnection> en la política.

Resolución

Asegúrese de que la política Service Callout tenga el elemento <HTTPTargetConnection> o <LocalTargetConnection>. Por ejemplo:

<?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

Mensaje de error

La implementación del proxy de API a través de la interfaz de usuario o la API de Apigee falla y se muestra este mensaje de error:

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

Ejemplo de mensaje de error

Error Saving Revision 1
Invalid Timeout value -1.

Captura de pantalla de ejemplo

No se ha podido guardar la revisión 1.

Causa

Si el elemento <Timeout> de la política Service Callout tiene un valor cero o negativo, no se podrá implementar el proxy de API.

Diagnóstico

Consulta el elemento <Timeout> de la política de texto destacado del servicio. Si el valor es cero o un número negativo, ese es el motivo del error. Por ejemplo:

<?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>

Como el elemento <Timeout> tiene el valor cero, el proxy no se puede implementar.

Resolución

Compruebe que el valor especificado en el elemento <Timeout> sea un número positivo o igual a cero. Por ejemplo:

<?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>