Webservice Methoden

Alle Webservices stellen die Methode

 

execute ( operation, fileContent, fileURL )

 

zur Verfügung, mit der die Funktion des Webservice aufgerufen werden kann.

 

Als Beispiel die Definition des Aufrufs des Webservice "Converter" (Auszug aus dem WSDL):

 

<xs:complexType name="execute">
 <xs:sequence>
         <xs:element ref="ns1:operation" minOccurs="0"/>
         <xs:element name="fileContent" xmime:expectedContentTypes="application/octet-stream" type="xs:base64Binary" minOccurs="0"/>
         <xs:element name="fileURL" type="xs:anyURI" minOccurs="0"/>
 </xs:sequence>

</xs:complexType>

 

Der Funktionsaufruf verwendet dabei die folgenden Parameter:

 

operation - Definiert den komplexen Type, der alle Parameter für den Webservice-Aufruf (die Webservice-Operation) enthält. Die möglichen Parameter unterscheiden sich je nach Webservice. Unter "Webservice Parameter" finden Sie eine Beschreibung der verschiedenen Parameter. Der Aufbau der Parameter entspricht dem XML-Schema (XSD) http://schema.webpdf.de/1.0/operation.xsd.

 

Die meisten Webservices (mit Ausnahme von "URLConverter") erwarten neben der "operation" auch noch ein Dokument zur Verarbeitung, diese kann entweder direkt als "fileContent" oder als "fileURL" angegeben werden.

 

fileContent - Datei, für die die Operation ausgeführt werden soll. Die Datei wird "BAS64 encoded" als "byte stream" (application/octet-stream) übertragen.

 

fileURL - eine URL ("file:///"), die auf das Dokument verweist (Bsp: "file:///C:/temp/mydocument.docx")

 

hint

Aktuell wird bei "fileURL" nur das Protokoll "file:" unterstützt. Andere Protokolle, wie z.B. "http://" führen zu einem Fehler.

 

Beim Webservice "URLConverter" ist nur der Parameter "operation" vorhanden, da dieser kein Dokument benötigt. Die zu konvertierende URL wird in der Datenstruktur bei "url" übergeben.

 

Als Rückgabe liefert die Methode "execute" den komplexen Typ "executeResponse":

 

<xs:complexType name="executeResponse">
  <xs:sequence>
  <xs:element name="return" xmime:expectedContentTypes="application/octet-stream" type="xs:base64Binary" nillable="true" minOccurs="0"/>
  </xs:sequence>
</xs:complexType>
 

Über den Parameter "return" wird das veränderte Dokument als "BASE64 encoded byte stream" (application/octet-stream) geliefert.