Befehl 'createWSGWGatewayService'

Verwenden Sie den Befehl createWSGWGatewayService, um die Konfiguration eines neuen Gateway-Service zu erstellen.

Sie können eine neue Gateway-Service-Konfiguration, wie in diesem Artikel beschrieben, mit dem Tool "wsadmin" erstellen, oder Sie können, wie im Artikel Einen neuen Gateway-Service erstellen beschrieben, die Administrationskonsole verwenden.

Verwenden Sie zum Ausführen des Befehls das Objekt AdminTask des Scripting-Clients wsadmin.

[IBM i][IBM i]Der Scripting-Client wsadmin wird über die Qshell ausgeführt. [IBM i]Weitere Informationen finden Sie unter Qshell für die Ausführung von WebSphere-Scripts mit wsadmin-Scripting konfigurieren.

Für die SIB-Befehle wird jeweils eine Befehlszeilenhilfe bereitgestellt:
  • Geben Sie den folgenden Befehl an der wsadmin-Eingabeaufforderung ein, um eine Liste der verfügbaren Befehle für Gateways und eine Kurzbeschreibung jedes einzelnen Befehls anzuzeigen:

    print AdminTask.help('WSGateway')

  • Zum Anzeigen einer übersichtlichen Hilfe zu einem bestimmten Befehl geben Sie an der wsadmin-Eingabeaufforderung den folgenden Befehl ein:

    print AdminTask.help('Befehlsname')

Speichern Sie Ihre Änderungen nach der Ausführung des Befehls in der Masterkonfiguration. Verwenden Sie hierfür beispielsweise den folgenden Befehl:

AdminConfig.save()

Bevor Sie diesen Befehl verwenden, können Sie mit Befehlen für SIB-fähige Web-Services einen neuen Service für abgehende Daten erstellen und einen Port für abgehende Daten hinzufügen. Weitere Informationen finden Sie im Beispiel am Ende dieses Artikels.

Zweck

Dieser Befehl erstellt einen neuen GatewayService mit den zugehörigen InboundService- und TargetService-Objekten.

Zielobjekt

ObjectName der Gateway-Instanz, in der der Gateway-Service erstellt wird.

Der Befehl erstellt das Ziel für Gateway-Anforderungen und das zugehörige Antwortziel. Das Ziel für Gateway-Anforderungen wird konfiguriert, um dem Antwortpfad das Antwortziel hinzuzufügen. Wenn bereits ein Ziel mit dem angegebenen Namen oder dem Standardnamen vorhanden ist, schlägt der Befehl fehl.

Wenn bereits ein Gateway-Service oder Proxy-Service mit demselben Namen vorhanden ist, schlägt der Befehl fehl.

Der Befehl erstellt immer ein InboundService-Objekt, das denselben Namen hat wie der Gateway-Service. Der Befehl schlägt fehl, wenn bereits ein Service für eingehende Daten mit diesem Namen vorhanden ist.

Die WSDL-Position aus dem OutboundService-Objekt bzw. Befehl wird für die WSDL-Schablone des Service für eingehende Daten verwendet. Wenn die WSDL über einen Proxy-Server abgerufen wird, muss der Server, in dem der Befehl ausgeführt wird, die Systemeigenschaften besitzen, die den Proxy-Server ordnungsgemäß angeben. Falls der Proxy-Server eine Authentifizierung erfordern, können die Benutzer-ID und das Kennwort als Parameter mit dem Befehl angegeben werden.

Das von diesem Befehl erstellte TargetService-Objekt wird als Standardeinstellung für den Gateway-Service definiert, und der Standard-Routing-Pfad im Gatewayziel zeigt auf das geplante Ziel. Die Eigenschaft com.ibm.websphere.wsgw.targets des geplanten Ziels enthält das geplante Ziel bzw. das Ziel, das dem Service für abgehende Daten zugeordnet ist. Die Eigenschaften com.ibm.websphere.wsgw.gatewayService und com.ibm.websphere.wsgw.gatewayInstance des Gatewayziels werden entsprechend definiert.

Erforderliche Parameter

-name
Der Name des Gateway-Service.

Vorgegebene Parameter

-wsdlLocation
Die Position der WSDL-Schablonendatei.

Dies ist entweder eine Webadresse oder der servicespezifische Teil eines UDDI-Serviceschlüssels. Wenn Sie eine UDDI-Referenz angeben, wird angenommen, dass es sich bei der WSDL-Position um einen UDDI-Serviceschlüssel handelt.

Es folgt ein Beispiel für einen vollständigen UDDI-Serviceschlüssel:
uddi:blade108node01cell:blade108node01:server1:default:6e3d106e-5394-44e3-be17-aca728ac1791
Der servicespezifische Teil dieses Schlüssels ist der letzte Teil:
6e3d106e-5394-44e3-be17-aca728ac1791
Wenn Sie diesen Parameter nicht angeben, wird die WSDL-Position aus dem OutboundService-Objekt als Schablone für die WSDL-Position verwendet.
-wsdlServiceName
Der Name des Service im WSDL-Dokument. Der Name muss nur angegeben werden, wenn die WSDL-Schablone mehrere Services enthält oder die WSDL in einer UDDI-Registry gesucht wird.
-wsdlServiceNamespace
Der Namespace des Service im WSDL-Dokument. Dieser Parameter muss nur angegeben werden, wenn die WSDL-Schablone mehrere Services enthält oder die WSDL mit einer UDDI-Registry gesucht wird oder der Service nicht im Standard-Namespace für das WSDL-Dokument enthalten ist.
-targetDestination
Der Name des geplanten Ziels, das sich in demselben Service Integration Bus wie das Gatewayziel oder in einem anderen Bus befinden kann (im letzteren Fall muss auch der Parameter -targetBus angegeben werden).
Geben Sie den Parameter -targetDestination oder -targetService an.
-targetBus
Der Name des Service Integration Bus mit dem geplanten Ziel.
Geben Sie diesen Parameter an, wenn der Parameter -targetDestination angegeben wurde und das geplante Ziel sich nicht in demselben Service Integration Bus wie das Gatewayziel befindet.
-targetService
Der Name des Zielservice für abgehende Daten.
Geben Sie den Parameter -targetDestination oder -targetService an.

Optionale Parameter

-requestDestination
Der Name des Gatewayanforderungsziels.
-replyDestination
Der Name des Gatewayantwortziels.
-uddiReference
Wenn Sie einen UDDI-Serviceschlüssel als Position der WSDL angegeben haben, müssen Sie die UDDI-Referenz für die UDDI-Zielregistry angeben.
-userId
Die Benutzer-ID für das Abrufen der WSDL.
-password
Das Kennwort für das Abrufen der WSDL.

Beispiel

  • Mit Jython:
    gwService = AdminTask.createWSGWGatewayService(wsgw, ["-name",
     "MyGatewayService", "-targetService", "MyService"])
  • Mit Jacl:
    set gwService [$AdminTask createWSGWGatewayService $wsgw {-name 
    "MyGatewayService" -targetService "MyService"}]
Das folgende Beispiel zeigt eine minimale Befehlsfolge, mit der Sie einen vollständig funktionsfähigen Gateway-Service mit eingehenden und abgehenden SOAP-over-HTTP-Protokollanhängen erstellen können:
  1. Erstellen Sie den Service für abgehende Daten für den Service-Provider. Bus steht für den Namen des Service Integration Bus:
    • Mit Jython:
      outService = AdminTask.createSIBWSOutboundService(bus, ["-name",
       "StockQuoteService",
       "-wsdlLocation", "http://myserver.com/wsdl/StockQuoteService.wsdl"])
    • Mit Jacl:
      set outService [$AdminTask createSIBWSOutboundService $bus {-name 
      "StockQuoteService"
       -wsdlLocation "http://myserver.com/wsdl/StockQuoteService.wsdl"}]
  2. Fügen Sie gemäß Definition in der WSDL des Service-Providers einen Port für SOAP over HTTP hinzu:
    • Mit Jython:
      outPort = AdminTask.addSIBWSOutboundPort(outService, ["-name", "SOAPHTTPPort",
       "-node", "MyNode", "-server", "server1"])
    • Mit Jacl:
      set outPort [$AdminTask addSIBWSOutboundPort $outService {-name "SOAPHTTPPort"
       -node "MyNode" -server "server1"}]
  3. Erstellen Sie den Gateway-Service. wsgw steht für den Namen der Gateway-Instanz:
    • Mit Jython:
      gwService = AdminTask.createWSGWGatewayService(wsgw, ["-name",
       "StockQuoteGatewayService", "-targetService", "StockQuoteService"])
    • Mit Jacl:
      set gwService [$AdminTask createWSGWGatewayService $wsgw {-name
       "StockQuoteGatewayService" -targetService "StockQuoteService"}]
  4. Rufen Sie den Service für eingehende Daten für den Gateway-Service ab. Busname steht hier für den Namen des Service Integration Bus:
    • Mit Jython:
      inServiceName = AdminConfig.showAttribute(gwService, "inboundServiceName")
      inService = AdminConfig.getid(
       "/SIBus:"+busName+"/SIBWSInboundService:"+inServiceName+"/" )
    • Mit Jacl:
      set inServiceName [$AdminConfig showAttribute $gwService "inboundServiceName"]
      set inService [$AdminConfig getid 
      /SIBus:$busName/SIBWSInboundService:$inServiceName/]
  5. Fügen Sie einen Port für SOAP over HTTP hinzu (der erste Endpunktlistener für SOAP over HTTP ist bereits konfiguriert):
    • Mit Jython:
      inPort = AdminTask.addSIBWSInboundPort(inPort, ["-name", "SOAPHTTPPort",
       "-endpointListener", "soaphttp1", "-node", "MyNode", "-server", "server1"])
    • Mit Jacl:
      set inPort [$AdminTask addSIBWSInboundPort $inPort {-name "SOAPHTTPPort"
       -endpointListener "soaphttp1" -node "MyNode" -server "server1"}]
  6. Schließen Sie die Konfiguration der Services und Ports für eingehende und abgehende Daten ab. Installieren Sie beispielsweise JAX-RPC-Handler oder WS-Security.

Symbol, das den Typ des Artikels anzeigt. Referenzartikel



Symbol für Zeitmarke Letzte Aktualisierung: 25.05.2016
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=rwsg_cli_gw_new
Dateiname:rwsg_cli_gw_new.html