Problem

In diesem Artikel wird beschrieben, wie Sie den Webdienst-Dienst in Prozessen verwenden, um Dienste aufzurufen, die Dateianlagen als Eingabewerte erfordern. In diesem Artikel wird auch beschrieben, wie Sie das Format festlegen, in dem Dateianlagen von LiveCycle ES-Webdiensten zurückgegeben werden.

Beispielsweise werden Dienstein- und -ausgabevariablen vom Typ „Dokument“ in SOAP-Nachrichten als Dateianlagen dargestellt. Zur Bereitstellung von Dokumenteingabewerten beinhaltet die SOAP-Nachricht eine Dateianlage. Antwortnachrichten beinhalten Dateianlagen, wenn Webdienste Ausgabevariablen vom Typ „Dokument“ haben.

Dateien können als MIME- oder MTOM-Anhänge, als base64-kodierter Text oder unter Verwendung der URL der Datei angehängt werden:

  • Die SOAP-Nachricht und die Konfiguration des Vorgangs „Webdienst aufrufen“ unterscheiden sich für jeden Anhangtyp. (Weitere Informationen finden Sie unter „Konfigurieren der Webdienstanforderungsmeldung“.)
  • Wenn Sie einen LiveCycle ES-Webdienst aufrufen, der einen Dokumentwert zurückgibt, können Sie die Methode festlegen, mit der die Datei an die SOAP-Antwortmeldung angehängt wird. (Weitere Informationen finden Sie unter „Konfigurieren der Webdienstanforderungsmeldung“.)

Hinweis: Webdienste, die von LiveCycle ES bereitgestellt werden, unterstützen MTOM-Anhänge nicht.

Konfigurieren der Webdienstanforderungsmeldung

In diesem Abschnitt wird beschrieben, wie Sie die Eigenschaft „Webdienstoptionen“ des Vorgangs „Webdienst aufrufen“ konfigurieren. Mit dieser Eigenschaft konfigurieren Sie die SOAP-Anforderungsmeldung, die an den Webdienst gesendet wird:

Öffnen des „Webdienst-Einstellungen“-Dialogfelds

Sie verwenden das „Webdienst-Einstellungen“-Dialogfeld, um die Eigenschaft „Webdienstoptionen“ des Vorgangs „Webdienst aufrufen“ zu konfigurieren.

Öffnen des „Webdienst-Einstellungen“-Dialogfelds:

  1. Klicken Sie im Prozessidagramm auf den „Webdienst aufrufen“-Vorgang.
  2. Erweitern Sie in der Eigenschaftsansicht den „Webdienstoptionen“-Bereich und klicken Sie auf die Schaltfläche neben dem „Optionen“-Feld.

Festlegen der Webdiensteigenschaften

Sie müssen folgende Informationen über den Webdienst bereitstellen, damit der Webdienst-Dienst die WSDL abruft und SOAP-Nachrichten sendet und empfängt:

WSDL-URL: Die URL der Webdienstdefinition. Die URL für Prozess-WSDLs sind im folgenden Format: http://[server name]:[port]/soap/services/[process name]?wsdl Die folgende URL verweist beispielsweise auf die WSDL für den Prozess mit dem Namen „echoDocument“. Der Anwendungsserver läuft auf demselben Computer, auf dem LiveCycle Workbench ES installiert ist: http://localhost:8080/soap/services/echoDocument?wsdl Benutzername: Der Benutzername des Benutzerkontos, mit dessen Hilfe Sie auf den Webdienst zugreifen. Sie müssen nur dann einen Benutzernamen eingeben, wenn der Webdienst eine Authentifizierung erfordert.

Kennwort: Das Kennwort, das dem Benutzernamen entspricht, den Sie für die Benutzername-Eigenschaft angegeben haben.

Anschluss: Der Dienst, den Sie verwenden möchten, der durch die WSDL zur Verfügung gestellt wird. Eine WSDL kann mehrere Dienste bereitstellen.

Ziel-URL: Die URL, die den Zugriff auf den Webdienst ermöglicht. Bei einem Prozess namens „echoDocument“ ist die URL „http://localhost:8080/soap/services/echoDocument“.

strong>Vorgang: Der Webdienstvorgang zum Aufrufen. Die Liste wird automatisch befüllt, wenn Sie die Webdienstdefinition laden.

Zeitlimit: Die Zeitdauer, für die Sie auf eine Antwort des Webservice warten sollten, bevor Sie den Webdienstaufruf abbrechen. Der Wert, den Sie bereitstellen, ist in Sekunden.





So legen Sie die Webdiensteigenschaften fest

  1. Klicken Sie im „Webdiensteinstellungen“-Dialogfeld auf die „Einstellungen“-Registerkarte.
  2. Geben Sie in das „WSDL URL“-Feld die URL der WSDL des Webdienstes ein.
  3. Klicken Sie auf „Laden“, um die WSDL abzurufen. Einige Eigenschaften auf der „Einstellungen“-Registrierkarte werden automatisch mit Informationen von der WSDL befüllt.
  4. Geben Sie, falls erforderlich, einen Benutzernamen und ein Kennwort ein.
  5. Wenn der Standardwert für „Anschluss“ nicht korrekt ist, geben Sie einen anderen Wert ein.
  6. Wenn der Standardwert für „Ziel-URL“ nicht korrekt ist, geben Sie eine andere URL ein.
  7. Wählen Sie den Vorgang aus, den Sie aufrufen möchten.
  8. (Optional) Geben Sie die Zeit an, die vergehen soll, bevor das Zeitlimit für die Dienstabfrage überschritten wird.

Generieren der ersten SOAP-Anforderung

Das „Webdiensteinstellungen“-Dialogfeld generiert eine SOAP-Nachricht zum Aufrufen des Webdienstes. Die Meldung basiert auf den von Ihnen angegebenen Webdiensteigenschaften. Die SOAP-Nachricht wird in einem Textfeld angezeigt, in dem Sie die Nachricht nach Bedarf bearbeiten können.

Generieren der ersten SOAP-Nachricht:

  1. Klicken Sie im „Webdiensteinstellungen“-Dialogfeld auf die „Anforderung“-Registrierkarte.
  2. Klicken Sie auf „Generieren“.

Anlagen konfigurieren

Die SOAP-Nachricht muss Dateianlagen enthalten, um Dokumentwerte von Diensteingabeparametern darzustellen.

Der folgende XML-Code zeigt die allgemeine Struktur einer SOAP-Nachricht, die für den Aufruf eines Webdienstvorgangs verwendet wird:

  • Das Hauptteilelement enthält ein Element mit dem Namen des Dienstvorgangs.
  • Das „operation_name“-Element enthält ein Element für jeden Eingabeparameter. Die Namen dieser Elemente sind mit den Parameternamen identisch.
  • Die Methode, die verwendet wird, um der SOAP-Nachricht Dateien anzuhängen (MIME, MTOM (außer LiveCycle ES-Webdienste), base64-kodierter Text oder Datei-URLs) bestimmt die Elemente, die verwendet werden, um Dateianlagen zu identifizieren.

<soapenv:Envelope
		
	     xmlns:soapenv=http://schemas.xmlsoap.org/soap/envelope/
		
	     xmlns:ser="http://foo.net/services"> 
		
	    <soapenv:Header /> 
		
	    <soapenv:Body> 
		
	       <ser:operation_name> 
		
	          <ser:parameter_name> 
		
	             <!-- elements for file attachments are placed here --> 
		
	          </ser:parameter_name> 
		
	       </ser:operation_name> 
		
	    </soapenv:Body> 
		
	 </soapenv:Envelope> 

Für die Webdienste der aktivierten Prozesse wird immer der Vorgangsname aufgerufen. Parameternamen sind die Namen der Eingabevariablen, die im Prozess definiert sind. In der folgenden Tabelle wird beschrieben, wie Sie die Optionen im „Webdiensteinstellungen“-Dialogfeld konfigurieren, um Dateien anzuhängen. Für jede Methode werden Beispiel-SOAP-Nachrichten bereitgestellt. Die Beispiele sind Anforderungsnachrichten für den Webdienst eines Prozesses mit dem Eingabeparameter „documentIn“. Der „documentIn“-Parameter ist ein Dokumentwert.

Typ des Anhangs Beschreibung Beispiel für eine SOAP-Nachricht
MIME/MTOM

Im „Webdiensteinstellungen“-Dialogfeld wird der Dokumentwert unter der „Anhang“-Registerkarte festgelegt. Jede Zeile in der Tabelle repräsentiert einen Dateianhang.

Konfigurieren einer MIME-Anlage:

  1. Klicken Sie auf die „Anhang“-Registerkarte.
  2. Klicken Sie auf „Anhangteil laden“, um der Tabelle Zeilen für die Anlagen hinzuzufügen, die für den Webdienstvorgang, den Sie aufrufen, angegeben werden müssen. Die Spalten „Teil“ und „Typ“ werden automatisch mit Werten gefüllt.

    Notieren Sie sich die Werte in der Spalte „Teil“. Sie werden diese Werte im 6. Schritt dieses Vorgangs brauchen. Die Spalte „Teil“ enthält die Kennung der Anlage. Der Webdienst bestimmt die Identifizierung.

  3. Klicken Sie für jede Zeile in der Tabelle auf die Zelle „Anlage“ und dann auf die erscheinende elliptische Schaltfläche, um den XPath-Builder zu öffnen. Der von Ihnen erstellte XPath-Ausdruck muss in den Speicherort aufgelöst werden, an dem der Dokumentwert gespeichert wird.
  4. Klicken Sie für jede Zeile in der Tabelle auf die Zelle „Inhaltstyp“ und geben Sie den MIME-Typ der angehängten Datei ein, z. B. Anwendung/PDF.
  5. Klicken Sie auf die Registerkarte „Anforderung“ und fügen Sie ein attachmentID-Element in jedem Element hinzu, das den Parameter darstellt, der einen Dateianhang als Wert annimmt.
  6. Geben Sie in jedem attachmentID-Element den Text ein, der in der Spalte „Teil“ für die Anlage auf der Registerkarte „Anlage“ angezeigt wird.
<soapenv:Envelope xmlns:soapenv=http://schemas.xmlsoap.org/soap/envelope/ xmlns:ser="http://adobe.com/idp/services"> <soapenv:Header/> <soapenv:Body> <ser:invoke> <ser:documentIn> <ser:attachmentID> part0 </ser:attachmentID> </ser:documentIn> </ser:invoke> </soapenv:Body> </soapenv:Envelope>
base64-kodierter Text

Der MIME-Inhaltstyp und die base64-kodierte Textdarstellung der Datei ist in der SOAP-Meldung enthalten:

  • Der Inhaltstyp wird in einem contentType-Element angegeben.
  • Der Text wird in einem binaryData-Element angegeben.

Um den base64-kodierten Text zu erhalten, können Sie die XPath-Funktion „getDocContentBase64“ verwenden.

Das folgende Verfahren nimmt an, dass der base64-kodierte Text, der den Dokumentwert darstellt, in einer Prozessvariable gespeichert ist.

Gehen Sie wie folgt vor, um einen base64-kodierten Textanhang zu konfigurieren:

  1. Klicken Sie auf die Registerkarte „Anfordern“.
  2. Fügen Sie die folgenden Elemente in das Element ein, das den Parameter darstellt, der den Dokumentwert annimmt:
    • contentType
    • binaryData
  3. Geben Sie im contentType-Element den Inhaltstyp ein oder fügen Sie einen XPath-Ausdruck hinzu, der zu einer Stringvariable, die den Inhaltstyp enthält, aufgelöst wird.
  4. Fügen Sie innerhalb des binaryData-Elements einen XPath-Ausdruck hinzu, der auf eine Stringvariable aufgelöst wird, die den base64-kodierten Text enthält, der das Dokument darstellt.
<soapenv:Envelope xmlns:soapenv=http://schemas.xmlsoap.org/soap/envelope/ xmlns:ser="http://adobe.com/idp/services"> <soapenv:Header/> <soapenv:Body> <ser:invoke> <ser:documentIn> <ser:contentType> {$/process_data/@contentType$} </ser:contentType> <ser:binaryData> {$/process_data/@docBase64$} </ser:binaryData> </ser:documentIn> </ser:invoke> </soapenv:Body> </soapenv:Envelope>
Datei-URL

Die URL der Datei wird in einem remoteURL-Element angegeben.

Gehen Sie wie folgt vor, um eine Datei-URL-Anlage zu konfigurieren:

  1. Klicken Sie auf die Registerkarte „Anfordern“.
  2. Fügen Sie ein remoteURL-Element innerhalb des Elements hinzu, das den Parameter darstellt, der den Dokumentwert übernimmt.
  3. Geben Sie im remoteURL-Element entweder die URL der Datei ein oder fügen Sie einen XPath-Ausdruck hinzu, der in eine Stringvariable mit der URL aufgelöst wird.
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ser="http://adobe.com/idp/services"> <soapenv:Header/> <soapenv:Body> <ser:invoke> <ser:documentIn> <ser:remoteURL> http://help.adobe.com/en_US/livecycle/es/overview.pdf </ser:remoteURL> </ser:documentIn> </ser:invoke> </soapenv:Body> </soapenv:Envelope>

Konfigurieren von LiveCycle ES Web-Dienst-Antwortmeldungen

Wenn ein LiveCycle ES-Web-Dienst einen Wert zurückgibt, ist dieser Wert eine Anlage zur SOAP-Antwortmeldung. Das Standardverhalten von LiveCycle ES-Web-Diensten besteht darin, den Wert des Ergebnisdokuments auf dem LiveCycle ES-Server zu speichern und die URL zum Dokument in der Antwortmeldung hinzuzufügen. Wenn die SOAP-Request-Message jedoch eine MIME-Anlage enthielt, verwendet die Antwort auch eine MIME-Anlage, um Dokumentwerte zurückzugeben.

Sie können das Standardverhalten überschreiben und die Methode angeben, mit der LiveCycle ES-Web-Dienste Dokument-Anlagen zurückgeben. Dateien können an SOAP-Antwortmeldungen als MIME-Anlagen, base64-kodierter Text oder mithilfe der Datei-URL angefügt werden. Um anzugeben, wie Dateien an Antwortmeldungen angehängt werden, müssen Sie einen der Werte aus der folgenden Tabelle an die Ziel-URL anfügen, die im Dialogfeld „Web-Dienst-Einstellungen“ auf der Registerkarte „Einstellungen“ angegeben ist:

Typ des Anhangs Anzufügender Text
base64-kodierter Text ?blob=base64
MIME ?blob=mime
Datei-URL ?blob=http

Beispielsweise führt der folgende Wert für eine Ziel-URL dazu, dass der Webdienst eines Prozesses namens „echoDocument“ Dateien an SOAP-Antwortmeldungen als base64-kodierten Text anhängt:

http://localhost:8080/soap/services/echoDocument?blob=base64

So überschreiben Sie das standardmäßige Anlage-Verhalten der SOAP-Antwortmeldung:

  1. Klicken Sie im Dialogfeld „WebService“ auf die Registerkarte „Einstellungen“.
  2. Hängen Sie in das Feld „Ziel-URL“ einen der Werte an die URL an:
    • ?blob=base64
    • ?blob=mime
    • ?blob=http

Dieses Werk unterliegt den Bedingungen der Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported License.  Twitter™- und Facebook-Beiträge fallen nicht unter die Bedingungen der Creative Commons-Lizenz.

Rechtliche Hinweise   |   Online-Datenschutzrichtlinie