Risoluzione dei problemi relativi al deployment dei criteri XML to JSON

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

EitherOptionOrFormat

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]
XMLToJSON[{0}]: Either Options or Format must be specified.

Errore di esempio

Error Saving Revision 1
XMLToJSON[{0}]: Either Options or Format must be specified.

Screenshot di esempio

Causa

Se nel criterio da XML a JSON non viene dichiarato uno degli elementi <Options> o <Format>, il deployment del proxy API non va a buon fine.

<Options> è obbligatorio se non viene utilizzato <Format>.

Utilizza l'elemento <Format> o il gruppo di elementi <Options>. Non puoi utilizzare sia <Format> sia <Options>. I formati predefiniti includono: xml.com, yahoo, google e badgerFish.

Diagnosi

  1. Esamina tutti i criteri da XML a JSON nel proxy API specifico in cui si è verificato l'errore. Se è presente un criterio da XML a JSON in cui nessuno degli elementi <Options> o <Format> è dichiarato, questo è la causa dell'errore.

    Ad esempio, il seguente criterio non include nessuno degli elementi dichiarati:

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

Risoluzione

Assicurati che il file XML del criterio da XML a JSON contenga uno degli elementi <Options> o <Format> dichiarati nel criterio.

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

Esempio 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

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]
XMLToJSON[policy_name]: Unknown Format [unknown_format].

Errore di esempio

Error Saving Revision 1
XMLToJSON[WithFormat]: Unknown Format google.com.

Screenshot di esempio

Causa

Se per l'elemento <Format> nel criterio da XML a JSON è stato definito un formato sconosciuto, il deployment del proxy API non va a buon fine.

I formati predefiniti includono: xml.com, yahoo, google e badgerFish.

Diagnosi

  1. Identifica il criterio da XML a JSON in cui si è verificato l'errore e il formato sconosciuto. Puoi trovare queste informazioni nel messaggio di errore. Ad esempio, nell'errore seguente, il nome del criterio è WithFormat e il formato sconosciuto è google.com:

    Error Saving Revision 1
    XMLToJSON[WithFormat]: Unknown Format google.com.
    
  2. Verifica che il formato sconosciuto specificato nel criterio da XML a JSON non riuscito corrisponda al valore identificato nel messaggio di errore (passaggio 1 sopra). Ad esempio, il seguente criterio consente di specificare il formato google.com, che corrisponde al contenuto del messaggio di errore:

    <XMLToJSON async="false" continueOnError="false" enabled="true" name="WithFormat">
      <DisplayName>WithFormat</DisplayName>
      <Properties/>
      <Format>google.com</Format>
      <OutputVariable>response</OutputVariable>
      <Source>response</Source>
    </XMLToJSON>
    
  3. Se il formato specificato non è uno dei formati predefiniti xml.com, yahoo, google o badgerFish, è la causa dell'errore.

    Nel criterio di esempio da XML a JSON mostrato sopra, il formato non è valido: google.com. Pertanto, il deployment del proxy API non va a buon fine e viene restituito l'errore:

    XMLToJSON[WithFormat]: Unknown Format google.com.
    

Risoluzione

Assicurati che il formato specificato nell'elemento <Format> del criterio da XML a JSON è valido. Ad esempio:

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