Risoluzione degli errori di deployment dei criteri da XML a JSON

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

EitherOptionOrFormat

Messaggio di errore

Il deployment del proxy API tramite l'UI o l'API di gestione perimetrale non riesce e genera 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 uno degli elementi <Options> o <Format> non viene dichiarato nel criterio da XML a JSON, il deployment del proxy API non va a buon fine.

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

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

Diagnostica

  1. Esamina tutti i criteri da XML a JSON nello specifico proxy API in cui si è verificato l'errore. Se esiste un criterio da XML a JSON in cui gli elementi <Options> o <Format> non sono dichiarati, allora è questa la causa dell'errore.

    Ad esempio, il seguente criterio non presenta 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 codice XML del criterio da XML a JSON abbia 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'UI o l'API di gestione perimetrale non riesce e genera 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> all'interno del criterio da XML a JSON è stato definito un formato sconosciuto, il deployment del proxy API non riesce.

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

Diagnostica

  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, nel seguente errore, 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 con errori corrisponda al valore identificato nel messaggio di errore (passaggio 1 sopra). Ad esempio, il seguente criterio specifica il formato google.com, che corrisponde al 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 è tra quelli predefiniti xml.com, yahoo, google o badgerFish, allora l'errore è questo.

    Nell'esempio di criterio da XML a JSON mostrato sopra, il formato è google.com e non è valido. Pertanto, il deployment del proxy API non riesce e restituisce 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>