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

Stai visualizzando la documentazione di Apigee Edge.
Vai alla documentazione di Apigee X.
info

EitherOptionOrFormat

Messaggio di errore

Il deployment del proxy API tramite l'interfaccia utente di Edge o l'API di gestione di Edge 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

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 XML to 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, 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'interfaccia utente di Edge o l'API di gestione di Edge 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

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 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 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, è la causa dell'errore.

    Nel criterio XML to JSON di esempio 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 da XML a 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>