Risoluzione dei problemi relativi agli errori di deployment dei criteri XML to JSON

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

EitherOptionOrFormat

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

Esempio di errore

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

Screenshot di esempio

È necessario specificare le opzioni o il formato.

Causa

Se uno degli elementi <Options> o <Format> non è dichiarato nel criterio XML to JSON, 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> che <Options>. I formati predefiniti includono: xml.com, yahoo, google e badgerFish.

Diagnosi

  1. Esamina tutti i criteri XML to JSON nel proxy API specifico in cui si è verificato l'errore. Se esiste un criterio XML to JSON in cui non è dichiarato uno degli elementi <Options> o <Format>, questo è il motivo dell'errore.

    Ad esempio, le seguenti norme non hanno 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 XML to 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 l'API o l'interfaccia utente di Apigee non va a buon fine con questo messaggio di errore:

Error Saving Revision [revision_number]
XMLToJSON[policy_name]: Unknown Format [unknown_format].

Esempio di errore

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

Screenshot di esempio

Messaggio di errore relativo al formato sconosciuto.

Causa

Se per l'elemento <Format> all'interno del criterio XML to JSON è 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 XML to 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 XML to JSON non riuscito corrisponda al valore identificato nel messaggio di errore (passaggio 1 sopra). Ad esempio, la seguente norma specifica il formato come google.com, che corrisponde a quello indicato nel 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, è questa la causa dell'errore.

    Nel criterio XML to JSON mostrato sopra, il formato è google.com, che non è valido. Di conseguenza, il deployment del proxy API non va a buon fine con l'errore:

    XMLToJSON[WithFormat]: Unknown Format google.com.
    

Risoluzione

Assicurati che il formato specificato nell'elemento <Format> del criterio XML to JSON sia 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>