Risoluzione degli errori di deployment dei criteri da XML a 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>