Beispiel: Eine WS-Notification-Subskription aussetzen

Verwenden Sie diese Task, um basierend auf dem bereitgestellten Beispielcodeauszug Code für einen JAX-RPC-Client zu schreiben, der in der Subskribentenrolle auftritt und eine Subskription für eine Konsumentenanwendung aussetzt.

Informationen zu diesem Vorgang

Dieses Beispiel basiert auf der Verwendung der JAX-RPC-APIs (Java™ API for XML-based Remote Procedure Call) zusammen mit Code, der mit Tool WSDL2Java (auf der Basis der beim Erstellen des WS-Notification-Servicepunkts generierten NotificationBroker-WSDL) generiert wird, und den APIs und SPIs von WebSphere Application Server.

In WebSphere Application Server gibt es zwei Implmentierungen des WS-Notification-Service: Version 6.1 und Version 7.0. Dieses JAX-RPC-Beispiel kann erfolgreich mit WS-Notification-Servicepunkten der Version 6.1 oder Version 7.0 interagieren. Wenn Sie WS-Notification mit Richtliniensätzen verwenden möchten, z. B. für die Kombination mit WS-ReliableMessaging, müssen Ihre WS-Notification-Anwendungen jedoch so codiert werden, dass sie das Programmiermodell JAX-WS (Java API for XML-based Web Services) verwenden, und sie müssen mit WS-Notification-Servicepunkten der Version 7.0 interagieren. Wenn Sie mit der Programmierung von JAX-WS-Clientanwendungen noch nicht vertraut sind, sehen Sie sich die folgenden Artikel an:

Vorgehensweise

  1. Ermitteln Sie den JAX-RPC-Service. Der JNDI-Name ist spezifisch für Ihre Web-Service-Clientimplementierung. // Die Operation PauseSubscription gehört zum SubscriptionManager-Service.
  2. Rufen Sie einen Stub für den Port ab, an dem Operationen gestartet werden sollen.
  3. Ordnen Sie die Anforderung der Subskription zu, die ausgesetzt werden soll. subscriptionEPR ist die EndpointReference (Endpunktreferenz), die beim Aufruf der Operation Subscribe zurückgegeben wird.
  4. Erstellen Sie weitere optionale Informationen.
  5. Rufen Sie die Operation "PauseSubscription" durch Aufruf der zugehörigen Methode im Stub auf.

Beispiel

Der folgende Beispielcode beschreibt einen Client in der Rolle eines Subskribenten, der eine Subskription für eine Erzeugeranwendung aussetzt:

// Den JAX-RPC-Service ermitteln.
Der JNDI-Name ist spezifisch für Ihre Web-Service-Clientimplementierung.
// Die Operation PauseSubscription gehört zum SubscriptionManager-Service.
InitialContext context = new InitialContext();
javax.xml.rpc.Service service = (javax.xml.rpc.Service) context.lookup("java:comp/env/services/SubscriptionManager");

// Ein Stub für den Port abrufen, auf dem Operationen gestartet werden sollen.
SubscriptionManager stub = (SubscriptionManager) service.getPort(SubscriptionManager.class);

// Die Anforderung der Subskription zuordnen, die ausgesetzt werden soll. Die subscriptionEPR ist die
// EndpointReference (Endpunktreferenz), die beim Aufruf der Operation Subscribe zurückgegeben wird.
((Stub) stub)._setProperty(WSAConstants.WSADDRESSING_DESTINATION_EPR, subscriptionEPR);

// Optionale Informationen erstellen.
SOAPElement[] optionalInformation = new SOAPElement[] {};

// Die Operation PauseSubscription durch Aufruf der zugehörigen Methode im Stub starten.
SOAPElement[] additionalReturnedInformation = stub.pauseSubscription(optionalInformation);

Symbol, das den Typ des Artikels anzeigt. Taskartikel



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