4D v16.3

Web Service mit 4D veröffentlichen

Home

 
4D v16.3
Web Service mit 4D veröffentlichen

Web Service mit 4D veröffentlichen  


 

 

Die Veröffentlichung eines Web Service in 4D erfolgt in der Regel in drei Stufen:

  1. Methode zum Veröffentlichen erstellen
  2. Veröffentlichung (WSDL) konfigurieren
  3. Publikation

Sie können bei Bedarf weitere eigene Stufen einbauen.

Sie können jede Art von Projektmethode erstellen, die zur Veröffentlichung als Web Service dienen soll. Sie muss Parameter akzeptieren und ein Ergebnis zurückgeben. Diese Parameter müssen im Kopfteil der Methode mit 4D Befehlen aus dem Kapitel Compiler deklariert werden. 

4D formatiert standardmäßig die Parameter zum Ausführen von Methoden, die als Web Service veröffentlicht werden. Sie können diese Parameter bei Bedarf über den 4D Befehl SOAP DECLARATION verändern. 

4D erledigt automatisch die Umwandlung der empfangenen und via SOAP gesendeten Daten. 

Warnung: Die Methodennamen werden in SOAP Anfragen als XML Tags verwendet. Sie dürfen daher, in Übereinstimmung mit dem XML Standard für Tag-Namen weder Leerzeichen noch Zeichen aus dem erweiterten Ascii-Satz enthalten. Nur der Latin Zeichensatz ist zulässig ([A-Za-z0-9._] | '-')*. 

Zur Entwicklung und Überwachung einer Methode, die als Web Service veröffentlicht wird, verwenden Sie 4D Befehle aus dem Kapitel Web Services (Server).

Um Methoden Ihrer Datenbank als Web Service zu publizieren, müssen nachfolgende Voraussetzungen erfüllt sein.

  • Der Rechner, welcher als SOAP Server dient (4D Server, 4D Client oder 4D Einzelplatz), verfügt über eine 4D SOAP Lizenz.
  • Der 4D Web Server ist gestartet.
  • Die Option Web Service Abfragen erlauben auf der Seite “Web Services” im Dialogfenster Datenbank-Eigenschaften ist markiert. Ist das nicht der Fall, verweigert 4D SOAP Anfragen und erzeugt kein WSDL.


    Ist diese Option markiert, erstellt 4D die WSDL Datei. Weitere Informationen dazu finden Sie im Abschnitt WSDL erzeugen
  • Jede Methode, die veröffentlicht werden soll, muss die Eigenschaft Zugang per Web Service haben. Das legen Sie im Dialogfenster Methode-Eigenschaften fest:


    Hinweis: Weitere Informationen zu diesem Dialogfenster finden Sie im Abschnitt Eigenschaften für Projektmethoden.
    Mit der Option Zugang per Web Service lässt sich die dazugehörige Methode über eine SOAP Anfrage als Web Service aufrufen.
    Hinweis: Ist außerdem die Option Anbieten per WSDL markiert, erscheint die Methode in der WSDL des Servers (siehe nächster Absatz).

Auf der Seite Methoden von 4D Explorer zeigen spezifische Icons an, dass die Methode als Web Service angeboten und zusätzlich auch in der WSDL Datei veröffentlicht wird .

WSDL beschreibt in XML Sprache die Syntax und die benötigte Information zum Aufrufen der 4D Methode (Methodenname, URL, Parameter, etc.).

In 4D entspricht WSDL einem einzelnen Web Service. Dieser definiert die Methoden und ihre Parameter und kann an einer bestimmten Stelle konsultiert werden. In 4D ist WSDL keine echte “Datei”, sondern eine URL mit Namen 4DWSDL für Web Services, die im Modus RPC veröffentlicht werden, mit Namen 4DWSDL/DOC ffür Web Services, die im Modus DOC veröffentlicht werden. Sie liegt immer im Root des Web Servers. Sie existiert nur im Speicher und wird nicht auf die Festplatte geschrieben.

Lautet die Adresse Ihres Web Server z.B. http://www.myserver.com, können Sie WSDL aufrufen über die URL:

  • http://www.myserver.com/4DWSDL(RPC Modus)
  • http://www.myserver.com/4DWSDL/DOC (DOC Modus)

Um eine Methode in WSDL hinzufügen oder zu entfernen, müssen Sie lediglich die entsprechende Option in den Methodeneigenschaften aktivieren bzw. deaktivieren. 4D aktualisiert sofort den Inhalt von WSDL. 

Hinweis: In 4D Explorer zeigt ein spezifisches Icon an, dass die Methode in WSDL publiziert wird.

Sind Web Services zugelassen, erzeugt 4D automatisch und dynamisch die WSDL des 4D Web Server, wenn mindestens für eine Methode die Eigenschaft Anbieten per WSDL markiert ist. Diese Option ist standardmäßig inaktiv.

Jeder im Internet veröffentlichte Web Service hat einen Namen. Er dient zur Unterscheidung der Dienste auf Ebene des SOAP Server (wenn der Server mehrere Web Services veröffentlicht) und in den Verzeichnissen der Web Services. 

4D verwendet standardmäßig den Namen A_WebService. Sie können ihn in den Datenbank-Eigenschaften auf der Seite Web>Web Services verändern.

Warnung: In Übereinstimmung mit dem XML Standard für Tag-Namen dürfen die Zeichenfolgen weder mit einer Zahl beginnen noch Leerzeichen enthalten. Sie sollten auch keine Zeichen aus dem erweiterten Ascii-Satz enthalten, z.B. Akzente.

Jeder im Internet veröffentlichte Web Service muss einmalig sein. Das wird über die XML Namensbereiche sichergestellt. Ein Namensbereich ist eine willkürliche Zeichenkette, um einen Satz XML Tags als einmalig zu identifizieren. In der Regel beginnt ein Namensbereich mit der URL der Firma, also http://mycompany.com/mynamespace. Die URL muss in diesem Fall weiter nichts besonderes enthalten; wichtig ist, dass die verwendete Zeichenfolge einmalig ist.

4D verwendet standardmäßig folgenden Namen: http://www.4d.com/namespace/default. Sie können ihn in den Datenbank-Eigenschaften auf der Seite Web>Web Services verändern.

Kommentare zu Methoden, die als Web Service angeboten und in WSDL veröffentlicht werden, erscheinen in dieser Datei automatisch als Feld “Dokumentation”.

Diese Kommentare müssen Sie auf der Seite Methoden des Explorer eingeben (siehe Abschnitt Kommentare verwenden).

Dieser Mechanismus dient zum Beschreiben oder Dokumentieren der veröffentlichten Methoden. Die Interpretation und Verwaltung dieses Felds richtet sich nach der Einbettung des Web Services auf Client-Seite.

Sobald Ihr Web Service von 4D veröffentlicht wird, kann jede Client Anwendung, die Web Services unterstützt, sich an diesen anmelden. Der Zugriffsmodus und die Abarbeitung der Information, die mit den Web Service Server ausgetauscht wird, richtet sich nach der Client Anwendung, die diese Operation ausführt. 

Alle für ein 4D Web Service benötigte Information, z.B die URL des Dienstes, die notwendigen Parameter, etc. werden in der WSDL von 4D veröffentlicht. Im Prinzip sollte die Nutzung eines Web Service mit dem Lesen der WSDL des SOAP Server beginnen, um diese Information ausfindig zu machen. In 4D lautet die URL der WSDL http://ServerAddress/4DWSDL (RPC Modus) oder http://ServerAddress/4DWSDL/DOC (DOC Modus).

Dieser Schritt ist jedoch nicht zwingend. Die Verbindung zum SOAP Server kann auch direkt erfolgen. 

Folgende Werte werden zum Erstellen von SOAP Anfragen benötigt:

  • URL Zugriff auf den von 4D veröffentlichten Web Service
    http://ServerAddress/4DSOAP/ (RPC mode) or
    http://ServerAddress/4DSOAP/DOC (DOC mode)
    (nicht anpassbar)
  • Parameter der Methode
    Die Parameter in der Methode müssen deklariert sein (definiert vom Entwickler).
    Standardnamen für SOAP: FourD_arg0, FourD_arg1... FourD_argn
    Anpassbare Namen über den Befehl SOAP DECLARATION.
  • Inhalt des Feldes SOAP Action
    ServiceName#MethodName (nicht anpassbar).

 
EIGENSCHAFTEN 

Produkt: 4D
Thema: Web Services publizieren und einsetzen

 
GESCHICHTE 

 
ARTIKELVERWENDUNG

4D Designmodus ( 4D v16)
4D Designmodus ( 4D v16.1)
4D Designmodus ( 4D v16.3)