Risoluzione degli errori di runtime del criterio da XML a JSON

Stai visualizzando la documentazione relativa a Apigee e Apigee ibrido.
Visualizza la documentazione di Apigee Edge.

SourceUnavailable

Codice di errore

steps.xml2json.SourceUnavailable

Corpo della risposta di errore

{
    "fault": {
        "faultstring": "XMLToJSON[policy_name]: Source [source_variable] is not available",
        "detail": {
            "errorcode": "steps.xmltojson.SourceUnavailable"
        }
    }
}

Messaggio di errore di esempio

{
    "fault": {
        "faultstring": "XMLToJSON[Convert-XMLToJSON]: Source response is not available",
        "detail": {
            "errorcode": "steps.xml2json.SourceUnavailable"
        }
    }
}

Causa

Questo errore si verifica se la variabile message o stringa specificata nell'elemento <Source> del criterio da XML a JSON corrisponde a:

  • fuori ambito (non disponibile nel flusso specifico in cui viene eseguito il criterio) o
  • non può essere risolto (non è definito)

Ad esempio, questo errore si verifica se si prevede che il criterio da XML a JSON debba essere eseguito nel flusso di richiesta, ma l'elemento <Source> è impostato sulla variabile response, che non esiste nel flusso di richiesta.

Diagnosi

  1. Identifica il criterio da XML a JSON in cui si è verificato l'errore e il nome della variabile non disponibile. Puoi trovare entrambi gli elementi nell'elemento faultstring della risposta di errore. Ad esempio, nel seguente faultstring, il nome del criterio è Convert-XMLToJSON e la variabile è response:

    "faultstring": "XMLToJSON[Convert-XMLToJSON]: Source response is not available"
    
  2. Nel codice XML del criterio XML to JSON non riuscito, verifica che il nome del set di variabili nell'elemento <Source> corrisponda al nome della variabile identificato nella stringa di errore (passaggio 1 sopra). Ad esempio, il seguente criterio da XML a JSON specifica una variabile denominata response nell'elemento <Source>, che corrisponde al contenuto in faultstring:

    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
    <XMLToJSON async="false" continueOnError="false" enabled="true" name="Convert-XMLToJSON">
        <DisplayName>Convert-XMLToJSON</DisplayName>
        <Properties/>
        <Format>google</Format>
        <OutputVariable>response</OutputVariable>
        <Source>response</Source>
    </XMLToJSON>
    
  3. Determina se la variabile utilizzata nell'elemento <Source> è definita e disponibile nel flusso in cui viene eseguito il criterio da XML a JSON.

  4. Se la variabile è:

    • fuori ambito (non disponibile nel flusso specifico in cui viene eseguito il criterio) o
    • non può essere risolto (non è definito)

    questa è la causa dell'errore.

    Ad esempio, supponiamo che il criterio da XML a JSON mostrato sopra debba essere eseguito nel flusso request. Ricorda che la variabile response viene utilizzata nell'elemento <Source> del criterio da XML a JSON. La variabile di risposta è disponibile solo nel flusso di risposta.

    Poiché la variabile di risposta non esiste nel flusso di richiesta, ricevi il codice di errore:

    steps.xml2json.SourceUnavailable
    

Risoluzione

Assicurati che la variabile impostata nell'elemento <Source> del criterio da XML a JSON non riuscito sia definita ed esista nel flusso in cui viene eseguito il criterio.

Per correggere il criterio da XML a JSON di esempio mostrato sopra, puoi modificare l'elemento <Source> in modo da utilizzare la variabile request esistente nel flusso di richiesta:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<XMLToJSON async="false" continueOnError="false" enabled="true" name="Convert-XMLToJSON">
    <DisplayName>Convert-XMLToJSON</DisplayName>
    <Properties/>
    <Format>google</Format>
    <OutputVariable>response</OutputVariable>
    <Source>request</Source>
</XMLToJSON>

ExecutionFailed

Codice di errore

steps.xml2json.ExecutionFailed

Corpo della risposta di errore

{
    "fault": {
        "faultstring": "XMLToJSON[policy_name]: Execution failed. reason: Premature end of document while parsing at line [line_number](possibly  around char [character_number])",
        "detail": {
            "errorcode": "steps.xml2json.ExecutionFailed"
        }
    }
}

Cause possibili

Le possibili cause di questo errore sono:

Causa Descrizione
Payload input mancante Il payload di input (XML) è vuoto.
Input non valido o non corretto L'input (XML) passato al criterio da XML a JSON non è valido o è in un formato non corretto.

Causa: payload di input mancante

Nel criterio da XML a JSON, se i contenuti (payload) della variabile specificata nell'elemento <Source> sono vuoti, si verifica questo errore.

Ad esempio, se l'elemento <Source> nel criterio da XML a JSON è impostato come variabile request o response e dovrebbe contenere un payload XML, questo errore si verifica se il payload è vuoto.

Diagnosi

  1. Identifica il criterio da XML a JSON in cui si è verificato l'errore. Puoi trovare queste informazioni nell'elemento faultstring della risposta di errore. Ad esempio, nel seguente faultstring, il nome del criterio è Convert-XMLToJSON:

    "faultstring": "XMLToJSON[Convert-XMLToJSON]: Execution failed. reason: Premature end of document while parsing at line 1(possibly  around char 0)"
    
  2. Esamina l'elemento <Source> nel file XML del criterio XML to JSON con errore e determina la variabile specificata. Ad esempio, per il seguente criterio da XML a JSON è impostato l'elemento <Source> per la richiesta:

    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
        <XMLToJSON async="false" continueOnError="false" enabled="true" name="Convert-XMLToJSON">
        <DisplayName>Convert-XMLToJSON</DisplayName>
        <Properties/>
        <Options>
            <RecognizeNumber>true</RecognizeNumber>
            <RecognizeBoolean>true</RecognizeBoolean>
            <RecognizeNull>true</RecognizeNull>
        </Options>
        <OutputVariable>request</OutputVariable>
        <Source>request</Source>
    </XMLToJSON>
    
  3. Controlla se la variabile specificata per l'elemento <Source> nel criterio XMLToJSON è vuota. Se è vuoto, questo è la causa dell'errore.

    Nel criterio da XML a JSON di esempio mostrato sopra, il payload della richiesta (ovvero il corpo della richiesta) inviato dal client era vuoto.

    Ad esempio:

    curl -v "http://your_host_alias/v1/testxmltojson" -H "Content-Type: application/xml"
    

    Dove your_host_alias è un dominio visibile al pubblico utilizzato per accedere alle API, come configurato nella proprietà virtualhosts.hostAliases nel file degli override. Consulta Specificare gli override della configurazione.

    Poiché il payload della richiesta XML è vuoto, viene visualizzato il codice di errore:

    steps.xml2json.ExecutionFailed
    

    Questo errore può verificarsi anche se l'elemento <Source> è impostato come risposta, ma il server di backend passa un payload vuoto.

Risoluzione

Assicurati che l'input passato al criterio da XML a JSON tramite l'elemento <Source> sia un payload XML valido e che non sia vuoto.

Per risolvere il problema con il criterio da XML a JSON di esempio, trasmetti un payload XML valido. Ad esempio:

  1. Crea un file denominato city.xml con il contenuto seguente:

    <?xml version="1.0" encoding="UTF-8"?>
    <root>
       <City>Bengaluru</City>
       <Name>Apigee</Name>
       <Pincode>560016</Pincode>
    </root>
    
  2. Effettua la chiamata API utilizzando un comando cURL come segue:

    curl -v "http://your_host_alias/v1/testxmltojson" -H "Content-Type: application/xml" -X POST -d @company.xml
    

    Dove your_host_alias è un dominio visibile al pubblico utilizzato per accedere alle API, come configurato nella proprietà virtualhosts.hostAliases nel file degli override. Consulta Specificare gli override della configurazione.

Causa: input non valido o non corretto

Se il criterio da XML a JSON analizza un input non valido o non valido, viene visualizzato questo errore.

Ad esempio, se viene fornito il seguente codice XML non valido come input per il criterio da XML a JSON,

<?xml version="1.0" encoding="UTF-8"?>
<root>
   <City>Bengaluru</City>
   <Name>Apigee</Name>
   <Pincode>560016</Pincode>

viene visualizzato l'errore:

"faultstring": "XMLToJSON[Convert-XMLToJSON]: Execution failed. reason: Premature end of document while parsing at line 6(possibly  around char 0)"

Diagnosi

  1. Identifica il criterio da XML a JSON in cui si è verificato l'errore. Puoi trovare queste informazioni nell'elemento faultstring della risposta di errore. Ad esempio, nel seguente faultstring, il nome del criterio è Convert-XMLToJSON:

    "faultstring": "XMLToJSON[Convert-XMLToJSON]: Execution failed. reason: Premature end of document while parsing at line 6(possibly  around char 0)"
    
  2. Esamina l'elemento <Source> specificato nel file XML con il criterio XML-JSON non valido. Ad esempio, nel seguente criterio da XML a JSON l'elemento <Source> è impostato sulla variabile request:

    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
        <XMLToJSON async="false" continueOnError="false" enabled="true" name="Convert-XMLToJSON">
        <DisplayName>Convert-XMLToJSON</DisplayName>
        <Properties/>
        <Options>
            <RecognizeNumber>true</RecognizeNumber>
            <RecognizeBoolean>true</RecognizeBoolean>
            <RecognizeNull>true</RecognizeNull>
        </Options>
        <OutputVariable>request</OutputVariable>
        <Source>request</Source>
    </XMLToJSON>
    
  3. Verifica che l'input specificato nell'elemento <Source> del criterio da XML a JSON sia un payload XML valido. Se l'input non è valido o è in un formato non corretto, è questa la causa dell'errore.

    Nel criterio di esempio da XML a JSON mostrato sopra, il seguente codice XML non valido è stato passato al criterio di estrazione delle variabili tramite il file city.xml:

    <?xml version="1.0" encoding="UTF-8"?>
    <root>
       <City>Bengaluru</City>
       <Name>Apigee</Name>
       <Pincode>560016</Pincode>
    

    Ecco la chiamata API di esempio che mostra come è stata passata la richiesta:

    curl -v "http://your_host_alias/v1/testxmltpjson" -H "Content-Type: application/xml" -X POST -d @city.xml
    

    Dove your_host_alias è un dominio visibile al pubblico utilizzato per accedere alle API, come configurato nella proprietà virtualhosts.hostAliases nel file degli override. Consulta Specificare gli override della configurazione.

    Il payload XML passato all'API non è valido, poiché il file XML non ha un tag di chiusura per l'elemento <root>. Quindi viene visualizzato il codice di errore:

    steps.xml2json.ExecutionFailed
    

    Questo errore può verificarsi anche se l'elemento <Source> è stato impostato come risposta, ma il payload della risposta XML dal server di backend non è valido o è in un formato non corretto.

Risoluzione

Assicurati che l'input trasmesso al criterio da XML a JSON tramite l'elemento <Source> sia valido e non in un formato corretto.

Per risolvere il problema relativo al criterio di esempio da XML a JSON discusso sopra, passa una richiesta di payload XML valida come segue:

<?xml version="1.0" encoding="UTF-8"?>
<root>
   <City>Bengaluru</City>
   <Name>Apigee</Name>
   <Pincode>560016</Pincode>
</root>

OutputVariableIsNotAvailable

Codice di errore

steps.xml2json.OutputVariableIsNotAvailable

Corpo della risposta di errore

{
    "fault": {
        "faultstring": "XMLToJSON[policy_name]: Output variable is not available.",
        "detail": {
            "errorcode": "steps.xml2json.OutputVariableIsNotAvailable"
        }
    }
}

Messaggio di errore di esempio

{
    "fault": {
        "faultstring": "XMLToJSON[Convert-XMLToJSON]: Output variable is not available.",
        "detail": {
            "errorcode": "steps.xml2json.OutputVariableIsNotAvailable"
        }
    }
}

Causa

Questo errore si verifica se la variabile specificata nell'elemento <Source> del criterio da XML a JSON è di tipo stringa e l'elemento <OutputVariable> non è definito. L'elemento <OutputVariable> è obbligatorio quando la variabile definita nell'elemento <Source> è di tipo string.

Diagnosi

  1. Identifica il criterio da XML a JSON in cui si è verificato l'errore. Puoi trovarlo nell'elemento faultstring della risposta di errore. Ad esempio, nel seguente faultstring, il nome del criterio è Convert-XMLToJSON:

    "faultstring": "XMLToJSON[Convert-XMLToJSON]: Output variable is not available."
    
  2. Nel criterio da XML a JSON non riuscito, esegui la convalida se manca <OutputVariable>.

    Di seguito è riportato un criterio da XML a JSON di esempio in cui manca l'elemento <OutputVariable>.

    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
    <XMLToJSON async="false" continueOnError="false" enabled="true" name="Convert-XMLToJSON">
        <DisplayName>Convert-XMLToJSON</DisplayName>
        <Properties/>
        <Format>google</Format>
        <Source>TrackingNumber</Source>
    </XMLToJSON>
    
    
  3. Determina il tipo di variabile specificato nell'elemento <Source>:

    1. Individua il codice all'interno del bundle proxy API, dove è stata definita prima la variabile.
    2. Una volta stabilito il criterio in cui la variabile viene definita e compilata per primo, devi stabilire il tipo di variabile come segue:
      1. Controlla il valore dell'attributo type (se presente).
      2. Se l'attributo type non è presente, la variabile viene considerata come una stringa.
    3. Se il tipo di variabile è string, questo è la causa dell'errore. Per saperne di più sulle variabili comuni e sui relativi tipi, consulta il Riferimento sulle variabili.

    Ad esempio, guarda la variabile TrackingNumber nel criterio da XML a JSON riportato sopra. È di tipo stringa. Ora consideriamo un criterio Assegna messaggio utilizzato per impostare il valore su una variabile denominata TrackingNumber, come mostrato di seguito:

    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
    <AssignMessage async="false" continueOnError="false" enabled="true" name="Assign_TrackingNumber">
        <DisplayName>Assign_TrackingNumber</DisplayName>
        <Properties/>
        <AssignVariable>
            <Name>TrackingNumber</Name>
            <Value><![CDATA[<Code>560075393539898</Code>]]></Value>
            <Ref/>
        </AssignVariable>
        <IgnoreUnresolvedVariables>true</IgnoreUnresolvedVariables>
        <AssignTo createNew="false" transport="http" type="request"/>
    </AssignMessage>
    

    Tieni presente che il tipo di variabile impostato tramite <AssignVariable> è di tipo stringa. La variabile TrackingNumber è di tipo stringa.

    A questo punto, ricorda che la variabile TrackingNumber viene utilizzata nell'elemento <Source> del criterio da XML a JSON:

    <Source>TrackingNumber</Source>
    

    Poiché TrackingNumber è un tipo di stringa e nel criterio manca <OutputVariable>, viene visualizzato il codice di errore:

    steps.xml2json.OutputVariableIsNotAvailable
    

Risoluzione

Assicurati che se la variabile specificata nell'elemento <Source> del criterio XMLToJSON sia di tipo stringa, in questo caso l'elemento <OutputVariable> è obbligatorio.

Per correggere il criterio da XML a JSON discusso sopra, includi l'elemento <OutputVariable> come mostrato di seguito.

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<XMLToJSON async="false" continueOnError="false" enabled="true" name="Convert-XMLToJSON">
    <DisplayName>Convert-XMLToJSON</DisplayName>
    <Properties/>
    <Format>google</Format>
    <OutputVariable>response</OutputVariable>
    <Source>TrackingNumber</Source>
</XMLToJSON>

InCompatibleTypes

Codice di errore

steps.xml2json.InCompatibleTypes

Corpo della risposta di errore

{
    "fault": {
        "faultstring": "XMLToJSON[policy_name]: String can not be assigned to message type.",
        "detail": {
            "errorcode": "steps.xml2json.InCompatibleTypes"
        }
    }
}

Messaggio di errore di esempio

{
    "fault": {
        "faultstring": "XMLToJSON[XMLToJSON_CheckType]: String can not be assigned to message type.",
        "detail": {
            "errorcode": "steps.xml2json.InCompatibleTypes"
        }
    }
}

Causa

Questo errore si verifica se il tipo di variabile definita nell'elemento <Source> e nell'elemento <OutputVariable> non sono uguali. È obbligatorio che il tipo di variabili contenute nell'elemento <Source> e nell'elemento <OutputVariable> corrisponda.

The valid types are message and string.

Diagnosi

  1. Identifica il criterio da XML a JSON in cui si è verificato l'errore. Puoi trovarlo nell'elemento faultstring della risposta di errore. Ad esempio, nel seguente faultstring, il nome del criterio è XMLToJSON_CheckType:

    "faultstring": "XMLToJSON[XMLToJSON_CheckType]: String can not be assigned to message type."
    
  2. Nel criterio da XML a JSON non riuscito, prendi nota dei valori specificati in <OutputVariable>.

    Ecco un criterio XMLToJSON di esempio in cui manca <OutputVariable> elemento

    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
    <XMLToJSON async="false" continueOnError="false" enabled="true" name="XMLToJSON_CheckType">
        <DisplayName>XMLToJSON_CheckType</DisplayName>
        <Properties/>
        <Format>google</Format>
        <OutputVariable>request</OutputVariable>
        <Source>TrackingNumber</Source>
    </XMLToJSON>
    
  3. Determina il tipo di variabile specificato negli elementi <Source> e <OutputVariable>:

    1. Individua il codice all'interno del bundle proxy API, dove ognuna di queste variabili è stata definita per prima.
    2. Una volta stabilito il criterio in cui la variabile viene definita e compilata per primo, devi stabilire il tipo di variabile come segue:
      1. Controlla il valore dell'attributo type (se presente).
      2. Se l'attributo type non è presente, la variabile viene considerata come una stringa.
    3. Se il tipo di variabile specificato in <Source> è string, mentre il tipo <OutputVariable> è un messaggio o viceversa, è questa la causa dell'errore. Per saperne di più sulle variabili comuni e sui relativi tipi, consulta il Riferimento sulle variabili.

    Considera ad esempio il criterio Assegna messaggio utilizzato per impostare un valore su una variabile denominata TrackingNumber, come illustrato di seguito:

    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
    <AssignMessage async="false" continueOnError="false" enabled="true" name="Assign_TrackingNumber">
        <DisplayName>Assign_TrackingNumber</DisplayName>
        <Properties/>
        <AssignVariable>
            <Name>TrackingNumber</Name>
            <Value><![CDATA[<Code>560075393539898</Code>]]></Value>
            <Ref/>
        </AssignVariable>
        <IgnoreUnresolvedVariables>true</IgnoreUnresolvedVariables>
        <AssignTo createNew="false" transport="http" type="request"/>
    </AssignMessage>
    

    Tieni presente che il tipo di variabile impostato tramite <AssignVariable> è di tipo stringa. La variabile TrackingNumber è di tipo stringa.

    Ricorda che la variabile TrackingNumber viene utilizzata nell'elemento <Source> del criterio XMLToJSON:

    <Source>TrackingNumber</Source>
    

    Analogamente, ricorda che la variabile request viene utilizzata nell'elemento <OutputVariable> del criterio da XML a JSON:

    <OutputVariable>request</OutputVariable>
    

    Poiché TrackingNumber è di tipo string mentre la variabile response è di tipo message, sono tipi incompatibili, pertanto viene visualizzato il codice di errore:

    steps.xml2json.InCompatibleTypes
    

    L'errore riportato sopra può verificarsi anche se la variabile nell'elemento <Source> è di tipo message, mentre la variabile nell'elemento <OutputVariable> è di tipo stringa.

Risoluzione

Assicurati che il tipo di variabile definita nell'elemento <Source> e nell'elemento <OutputVariable> sia sempre lo stesso. È obbligatorio che il tipo di variabili contenute nell'elemento <Source> e nell'elemento <OutputVariable> corrisponda.

Per correggere il criterio da XML a JSON discusso sopra, puoi dichiarare un'altra variabile TrackingNumber_output di tipo string utilizzando il criterio Assegna messaggio e utilizzare questa variabile nell'elemento <OutputVariable> del criterio da XML a JSON.

Modificato criterio di assegnazione messaggio:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<AssignMessage async="false" continueOnError="false" enabled="true" name="Assign_TrackingNumber">
    <DisplayName>Assign_TrackingNumber</DisplayName>
    <Properties/>
    <AssignVariable>
        <Name>TrackingNumber</Name>
        <Value><![CDATA[<Code>560098</Code>]]></Value>
        <Ref/>
    </AssignVariable>
    <AssignVariable>
        <Name>TrackingNumber_output</Name>
        <Ref/>
    </AssignVariable>
    <IgnoreUnresolvedVariables>true</IgnoreUnresolvedVariables>
    <AssignTo createNew="false" transport="http" type="request"/>
</AssignMessage>

Criterio XMLToJSON modificato:

  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
  <XMLToJSON async="false" continueOnError="false" enabled="true" name="XMLToJSON_CheckType">
      <DisplayName>XMLToJSON_CheckType</DisplayName>
      <Properties/>
      <Format>google</Format>
      <OutputVariable>TrackingNumber_output</OutputVariable>
      <Source>TrackingNumber</Source>
  </XMLToJSON>

InvalidSourceType

Codice di errore

steps.xml2json.InvalidSourceType

Corpo della risposta di errore

{
    "fault": {
        "faultstring": "XMLToJSON[class invalid_class]: Invalid source type class invalid_class. Valid source types are [message, string].",
        "detail": {
            "errorcode": "steps.xml2json.InvalidSourceType"
        }
    }
}

Messaggio di errore di esempio

{
    "fault": {
        "faultstring": "XMLToJSON[class java.lang.Integer]: Invalid source type class java.lang.Integer. Valid source types are [message, string].",
        "detail": {
            "errorcode": "steps.xml2json.InvalidSourceType"
        }
    }
}

Causa

Questo errore si verifica se il tipo di variabile utilizzato per definire l'elemento <Source> non è valido.I tipi di variabile validi sono message e string.

Diagnosi

  1. Identifica il tipo di origine non valida utilizzato nel criterio da XML a JSON. Puoi trovare queste informazioni nel messaggio di errore. Ad esempio, nel seguente errore, il tipo non valido è un numero intero.

    "faultstring": "XMLToJSON[class java.lang.Integer]: Invalid source type class java.lang.Integer. Valid source types are [message, string]."
    
  2. Esamina tutti i criteri da XML a JSON nel proxy API specifico in cui si è verificato l'errore. Nel criterio da XML a JSON non riuscito, prendi nota del nome della variabile specificata in <Source>.

    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
    <XMLToJSON async="false" continueOnError="false" enabled="true" name="XMLToJSON_CheckType">
        <DisplayName>XMLToJSON_CheckType</DisplayName>
        <Properties/>
        <Format>google</Format>
        <OutputVariable>response</OutputVariable>
        <Source>BookCode</Source>
    </XMLToJSON>
    
  3. Determina il tipo di variabile specificato nell'elemento <Source>:

    1. Individua il codice all'interno del bundle proxy API, dove questa variabile è stata definita prima.
    2. Una volta stabilito il criterio in cui la variabile viene definita e compilata per primo, devi stabilire il tipo di variabile come segue:
      1. Controlla il valore dell'attributo type (se presente).
      2. Se l'attributo type non è presente, la variabile viene considerata come una stringa.
    3. Se il tipo della variabile specificata in <Source> non è né messagestring, questo è la causa dell'errore. Per saperne di più sulle variabili comuni e sui relativi tipi, consulta il Riferimento sulle variabili.

    Considera ad esempio un criterio ExtractVariables utilizzato per estrarre il valore da un payload XML e imposta il valore sulla variabile BookCode in modo che sia di tipo integer, come mostrato di seguito:

    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
    <ExtractVariables async="false" continueOnError="false" enabled="true" name="Extract_BookCode">
        <DisplayName>Extract_BookCode</DisplayName>
        <Properties/>
        <Source>request</Source>
        <XMLPayload stopPayloadProcessing="false">
            <Variable name="BookCode" type="integer">
                <XPath>/root/BookCode</XPath>
            </Variable>
        </XMLPayload>
    </ExtractVariables>
    

    A questo punto, ricorda che la variabile BookCode viene utilizzata nell'elemento <Source> del criterio da XML a JSON:

    <Source>BookCode</Source>
    

    Poiché il tipo di questa variabile è Integer, che non è un tipo <Source> valido, il proxy API non riesce e restituisce l'errore:

    steps.xml2json.InvalidSourceType
    

Risoluzione

Assicurati che il tipo di variabile utilizzato per specificare l'elemento <Source> sia valido. I tipi di <Source> validi sono message e string.

Per evitare l'errore riportato sopra con il criterio da XML a JSON, potresti usare la variabile request, che è di tipo message o qualsiasi altra stringa che sia un payload XML valido.