Sie lesen gerade die Dokumentation zu Apigee und Apigee Hybrid.
Apigee Edge-Dokumentation aufrufen.
EitherOptionOrFormat
Fehlermeldung
Die Bereitstellung des API-Proxys über die Apigee-Benutzeroberfläche oder die API schlägt mit der folgenden Fehlermeldung fehl:
Error Saving Revision [revision_number] XMLToJSON[{0}]: Either Options or Format must be specified.
Beispiel für Fehlermeldung
Error Saving Revision 1
XMLToJSON[{0}]: Either Options or Format must be specified.
Beispiel-Screenshot
Ursache
Ist eines der Elemente <Options>
oder <Format>
in der "XML-to-JSON"-Richtlinie nicht deklariert, schlägt die Bereitstellung des API-Proxys fehl.
<Options>
ist erforderlich, wenn <Format>
nicht verwendet wird.
Verwenden Sie entweder das <Format>
-Element oder die <Options>
-Elementgruppe. Sie können nicht sowohl <Format>
als auch <Options>
verwenden. Vordefinierte Formate sind: xml.com
, yahoo
, google
und badgerFish
.
Diagnose
Untersuchen Sie alle "XML-to-JSON"-Richtlinien in dem API-Proxy, in dem der Fehler aufgetreten ist. Wenn es eine "XML-to-JSON"-Richtlinie gibt, bei der eines der Elemente
<Options>
oder<Format>
nicht deklariert ist, ist dies die Fehlerursache.Beispielsweise enthält die folgende Richtlinie keines der deklarierten Elemente:
<?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>
Lösung
Prüfen Sie, ob in der XML der "XML-to-JSON"-Richtlinie eines der Elemente <Options>
oder <Format>
in der Richtlinie deklariert ist.
Beispiel 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>
Beispiel 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
Fehlermeldung
Die Bereitstellung des API-Proxys über die Apigee-Benutzeroberfläche oder die API schlägt mit der folgenden Fehlermeldung fehl:
Error Saving Revision [revision_number] XMLToJSON[policy_name]: Unknown Format [unknown_format].
Beispiel für Fehlermeldung
Error Saving Revision 1
XMLToJSON[WithFormat]: Unknown Format google.com.
Beispiel-Screenshot
Ursache
Wenn für das Element <Format>
in der "XML-to-JSON"-Richtlinie ein unbekanntes Format definiert ist, schlägt die Bereitstellung des API-Proxys fehl.
Vordefinierte Formate sind: xml.com
, yahoo
, google
und badgerFish
.
Diagnose
Ermitteln Sie die Richtlinie „XML to JSON”, in der der Fehler aufgetreten ist, sowie das unbekannte Format. Diese Information finden Sie in der Fehlermeldung. Im folgenden Fehler lautet der Richtlinienname beispielsweise
WithFormat
und das unbekannte Format istgoogle.com
:Error Saving Revision 1 XMLToJSON[WithFormat]: Unknown Format google.com.
Prüfen Sie, ob das unbekannte Format, das in der fehlgeschlagenen "XML-to-JSON"-Richtlinie angegeben ist, mit dem in der Fehlermeldung angegebenen Wert übereinstimmt (Schritt 1 oben). Die folgende Richtlinie gibt beispielsweise die Anforderung als
google.com
an, was dem Inhalt der Fehlermeldung entspricht:<XMLToJSON async="false" continueOnError="false" enabled="true" name="WithFormat"> <DisplayName>WithFormat</DisplayName> <Properties/> <Format>google.com</Format> <OutputVariable>response</OutputVariable> <Source>response</Source> </XMLToJSON>
Wenn das angegebene Format nicht in den vordefinierten Formaten
xml.com
,yahoo
,google
oderbadgerFish
vorliegt, ist dies die Ursache des Fehlers.Im obigen Beispiel für die "XML-to-JSON"-Richtlinie ist das Format
google.com
ungültig. Entsprechend schlägt die Bereitstellung des API-Proxys mit folgendem Fehler fehl:XMLToJSON[WithFormat]: Unknown Format google.com.
Lösung
Prüfen Sie, ob das im Element <Format>
der "XML-to-JSON"-Richtlinie spezifizierte Format gültig ist. Beispiel:
<?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>