Estás viendo la documentación de Apigee Edge.
Ve a la
Documentación de Apigee X. información
EitherOptionOrFormat
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] XMLToJSON[{0}]: Either Options or Format must be specified.
Ejemplo de error
Error Saving Revision 1
XMLToJSON[{0}]: Either Options or Format must be specified.
Captura de pantalla del ejemplo.
Causa
Si uno de los elementos <Options>
o <Format>
no se declara en la política de XML a JSON, la implementación del proxy de API falla.
El elemento <Options>
es obligatorio si no se usa <Format>
.
Usa el elemento <Format>
o el grupo de elementos <Options>
. No puedes usar <Format>
y <Options>
al mismo tiempo. Los formatos predefinidos incluyen xml.com
, yahoo
, google
y badgerFish
.
Diagnóstico
Examina todas las políticas de XML a JSON en el proxy de API específico en el que se produjo la falla. Si hay una política de XML a JSON en la que no se declare alguno de los elementos
<Options>
o<Format>
, esa es la causa del error.Por ejemplo, la siguiente política no tiene ninguno de los elementos declarados:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <XMLToJSON async="false" continueOnError="false" enabled="true" name="XMLToJSON"> <DisplayName>XMLToJSON</DisplayName> <Properties/> <OutputVariable>response</OutputVariable> <Source>response</Source> </XMLToJSON>
Solución
Asegúrate de que el XML de la política de XML a JSON tenga uno de los elementos <Options>
o <Format>
que se declararon en la política.
Ejemplo 1:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<XMLToJSON async="false" continueOnError="false" enabled="true" name="XMLToJSON">
<DisplayName>XMLToJSON</DisplayName>
<Properties/>
<Format>google</Format>
<OutputVariable>response</OutputVariable>
<Source>response</Source>
</XMLToJSON>
Ejemplo 2:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<XMLToJSON async="false" continueOnError="false" enabled="true" name="XMLToJSON">
<DisplayName>XMLToJSON</DisplayName>
<Properties/>
<Options>
<RecognizeNumber>true</RecognizeNumber>
<RecognizeBoolean>true</RecognizeBoolean>
<RecognizeNull>true</RecognizeNull>
</Options>
<OutputVariable>response</OutputVariable>
<Source>response</Source>
</XMLToJSON>
UnknownFormat
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] XMLToJSON[policy_name]: Unknown Format [unknown_format].
Ejemplo de error
Error Saving Revision 1
XMLToJSON[WithFormat]: Unknown Format google.com.
Captura de pantalla del ejemplo.
Causa
Si el elemento <Format>
dentro de la política de XML a JSON tiene un formato definido, la implementación del proxy de API falla.
Los formatos predefinidos incluyen xml.com
, yahoo
, google
y badgerFish
.
Diagnóstico
Identifica la política de XML a JSON en la que se produjo el error y el formato desconocido. Puedes encontrar esta información en el mensaje de error. Por ejemplo, en el siguiente error, el nombre de la política es
WithFormat
y el formato desconocido esgoogle.com
:Error Saving Revision 1 XMLToJSON[WithFormat]: Unknown Format google.com.
Verifica que el formato desconocido especificado en la política de XML a JSON con errores coincida con el valor identificado en el mensaje de error (paso 1 anterior). Por ejemplo, en la siguiente política, se especifica el formato como
google.com
, que coincide con el contenido del mensaje de error:<XMLToJSON async="false" continueOnError="false" enabled="true" name="WithFormat"> <DisplayName>WithFormat</DisplayName> <Properties/> <Format>google.com</Format> <OutputVariable>response</OutputVariable> <Source>response</Source> </XMLToJSON>
Si el formato especificado no es uno de los formatos predefinidos
xml.com
,yahoo
,google
obadgerFish
, esa es la causa del error.En el ejemplo de política XML a JSON que se muestra arriba, el formato es
google.com
, que no es válido. Por lo tanto, la implementación del proxy de API falla con el siguiente error:XMLToJSON[WithFormat]: Unknown Format google.com.
Solución
Asegúrate de que el formato especificado en el elemento <Format>
de la política de XML a JSON sea válido. Por ejemplo:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<XMLToJSON async="false" continueOnError="false" enabled="true" name="WithFormat">
<DisplayName>WithFormat</DisplayName>
<Properties/>
<Format>google</Format>
<OutputVariable>response</OutputVariable>
<Source>response</Source>
</XMLToJSON>