---
sourceDocument: Xanadu-API-Referenz
sourceDocumentLink: https://servicenow-prod.fluidtopics.net/r/de-DE/xanadu/api-reference

 Release :

    - xanadu

ft:locale :

    - de-DE

ft:publication_title :

    - Xanadu-API-Referenz

ft:clusterId :

    - crapiref

bundleId :

    - crapiref

workflow :

    - Creator


---

# Scripted SOAP Web Services

# Scripted SOAP Web Services {#ariaid-title1}

* Freigeben Version: Xanadu
* 
* Aktualisiert 1. August 2024
* 
* ![](https://www.servicenow.com/docs/portal-asset/ico-clock) 2 Minuten Lesedauer

Scripted SOAP Web Services ermöglichen einem ServiceNow -Administrator das Erstellen von anwenderdefinierten SOAP Web Services.

Sie können Eingabe- und Ausgabeparameter für den SOAP-Webservice definieren und JavaScript für die Durchführung von Vorgängen verwenden. Obwohl diese Funktion sehr leistungsfähig ist, sollten Sie nach Möglichkeit [direkte Webservices](https://servicenow-prod.fluidtopics.net/gxrt5Cdyvd4I~ENNPAlGWw "Ein direkter Webservice ist für jede Tabelle im System verfügbar, wenn die richtige Zugriffssteuerungsliste konfiguriert ist.") oder [SOAP-Webservice-Importsätze verwenden](https://servicenow-prod.fluidtopics.net/xO7DkElE0GL0lL4J8r4rEQ "Webservice-Importsätze ergänzen direkte Webservices und geskriptete SOAP-Webservices, indem sie eine Webservice-Schnittstelle für Importsatztabellen bereitstellen."), da diese einfacher zu implementieren und zu warten sind.

## Sicherheit

SOAP-Webservices mit Skript besitzen dieselben Basissicherheitsoptionen wie alle SOAP-Webservices. Weitere Informationen zur Sicherheit von SOAP-Webservices finden Sie unter [SOAP Web Services-Sicherheit](https://servicenow-prod.fluidtopics.net/rhd1jVCjstZ7GaHOS1EyyA#c_SOAPWebService__SOAP-web-services-security).

Wenn auf einem System [strikte Sicherheit](https://servicenow-prod.fluidtopics.net/rhd1jVCjstZ7GaHOS1EyyA "Simple Object Access Protocol (SOAP) ist ein XML-basiertes Protokoll für den Zugriff auf Webservices über HTTP.") durchgesetzt wird, muss der mit HTTP authentifizierte Benutzer die Rolle [soap_script](https://servicenow-prod.fluidtopics.net/rhd1jVCjstZ7GaHOS1EyyA "Simple Object Access Protocol (SOAP) ist ein XML-basiertes Protokoll für den Zugriff auf Webservices über HTTP.") haben, um den geskripteten Webservice auszuführen.

## WSDL {#c_ScriptedWebServices__section_px4_kjf_f3b}

Alle Tabellen und Importsätze ServiceNow generieren WSDL-XML-Dokumente (Web Service Definition Language), die das Tabellenschema und die verfügbaren Vorgänge beschreiben.

## WSDL-Compliance erzwingen {#c_ScriptedWebServices__section_ay4_vff_f3b}

Sie können erzwingen, dass die Antwort Ausgabewerte in derselben Reihenfolge auflistet, die in der WSDL definiert ist.

Wenn Sie einen geskripteten SOAP Web Service erstellen, basiert die generierte WSDL auf den zugehörigen Listen „Eingabeparameter" und „Ausgabeparameter". Die eigentliche SOAP-Antwort, die vom geskripteten Service gesendet wird, wird durch die Befehlszeile Skript bestimmt. Dieses Verhalten kann dazu führen, dass das Skript Ausgabewerte in einer anderen Reihenfolge als in der WSDL definiert zurückgibt.  
Wählen Sie zum Erzwingen der Reihenfolge der Ausgabeparameter, wie in der zugehörigen Liste definiert, die Checkbox WSDL-Compliance. Wenn diese Checkbox aktiviert ist, ordnet der Webservice die vom Skript zurückgegebenen Parameter so an, dass sie der Reihenfolge in der WSDL entsprechen.  
Hinweis:  
Wenn zusätzliche Antwortparameter vom Skript zurückgegeben werden, jedoch nicht in der zugehörigen Liste „Antwortparameter" definiert sind, werden diese Parameter bei der Antwort von der Antwort ausgeschlossen, wenn WSDL-Compliance ausgewählt ist.  
{#c_ScriptedWebServices__table_ump_jgf_f3b__entry__2}

| Parameter | Reihenfolge |
|-|-|
| Param 1 | 200 |
| Param 2 | 300 |
| Param 3 | 100 |
[Tabelle : 1. Zugehörige Liste der Ausgabeparameter]

{#c_ScriptedWebServices__table_ump_jgf_f3b}

Das Folgende ist das Skript, das Werte für die definierten Ausgabeparameter festlegt. Beachten Sie, dass in diesem Beispielskript die Parameter in einer anderen Reihenfolge als in der zugehörigen Liste „Ausgabeparameter" festgelegt sind. Beachten Sie auch den zusätzlichen Parameter param4, der in der zugehörigen Liste nicht definiert ist.

    Response.param1 = 1;
    Response.param4 = 4;
    Response.param3 = 3;

Wenn die Checkbox WSDL-Compliance auf false gesetzt ist, lautet die vom Skript generierte SOAP-Antwort wie folgt:

    <response>
                    <param1>1</param1>
                    <param4>4</param1>
                    <param3>3</param1>
    </response>

Wenn die Checkbox WSDL-Compliance auf true gesetzt ist, lautet die vom Skript generierte SOAP-Antwort wie folgt:

    <response>
                    <param3>3</param1>
                    <param1>1</param1>
    </response>

## Statisches WDSL {#c_ScriptedWebServices__section_yfd_p2f_f3b}

Einige Webservice-Clients benötigen SOAP-Zugriff auf Ihre Instanz über ein bestimmtes WSDL-Format. Dieses erforderliche Format kann vom Standard-WSDL-Format von ServiceNow abweichen. In diesen Fällen können Sie eine statische WSDL erstellen, die dem erforderlichen Format entspricht.

## Globale Variablen

Um die benutzerdefinierte Verarbeitung eingehender SOAP-Anforderungen zu erleichtern, stehen im Skriptkontext die folgenden globalen Variablen zur Verfügung:

* SOAPRequestDocument: Java org.w3c.dom.Document-Objekt, das den eingehenden SOAP-Umschlag darstellt.
* SOAPRequestXML: Zeichenfolgenobjekt, das die eingehende SOAP-Umschlag-XML darstellt.
* Anforderung: Javascript-Objekt, das zugeordnete Werte (zugeordnet zu Eingabeparameternamen) des eingehenden SOAP-Umschlags enthält.
* Antwort: Javascript-Objekt, mit dem Sie die Antwortwerte anpassen können. Siehe [Antwort anpassen](https://servicenow-prod.fluidtopics.net/oIbwiHsgYE4QVH3n73ixGg "Folgen Sie diesem Beispiel, um die XML-Nutzlast einer SOAP-Antwort anzupassen und zu steuern.")
{#c_ScriptedWebServices__ul_qxr_xw2_f3b}
* **[Erstellen Sie einen neuen SOAP Web Service mit Skript](https://servicenow-prod.fluidtopics.net/qO2pUBw3XXDUeWaTSyLyEw)**   
  Folgen Sie diesen Beispielen, um einen neuen SOAP Web Service mit Skript zu erstellen.
* **[Antwort anpassen](https://servicenow-prod.fluidtopics.net/oIbwiHsgYE4QVH3n73ixGg)**   
  Folgen Sie diesem Beispiel, um die XML-Nutzlast einer SOAP-Antwort anzupassen und zu steuern.
* **[Erstellen Sie einen SOAP Web Service mit Skript mithilfe einer statischen WSDL](https://servicenow-prod.fluidtopics.net/t9LGtrOfoWJGwJ2ptyQ1cg)**   
  Folgen Sie diesen Beispielen, um einen geskripteten SOAP Web Service mit einer statischen WSDL zu erstellen.

