Network Deployment (Distributed operating systems), v8.0 > Develop and deploying applications > Develop web services - Notification (WS-Notification) > Develop applications that use WS-Notification
Example: Pausing a WS-Notification subscription
Use this task to write the code for a JAX-RPC client acting in the subscriber role, pausing a subscription for a consumer application, based on the example code extract provided.
This example is based on using the Java API for XML-based remote procedure calls (JAX-RPC) APIs with code generated by using the WSDL2Java tool (run against the Notification Broker WSDL generated as a result of creating your WS-Notification service point) and WAS APIs and SPIs.
In WAS there are two implementations of the WS-Notification service: v6.1 and v7.0. This JAX-RPC example can interact successfully with v6.1 or v7.0 WS-Notification service points. However to use WS-Notification with policy sets, for example to enable composition with WS-ReliableMessaging, then your WS-Notification applications must be encoded to use the Java API for XML-based Web Services (JAX-WS) programming model and must interact with v7.0 WS-Notification service points. If you are new to programming JAX-WS client applications, see the following topics:
- JAX-WS
- JAX-WS client programming model
- Implement static JAX-WS web services clients
- Write JAX-WS applications for WS-Notification
- Web services hints and tips: JAX-RPC versus JAX-WS, Part 1
Procedure
- Look up the JAX-RPC service. The JNDI name is specific to your web services client implementation. The PauseSubscription operation belongs to the SubscriptionManager service.
- Get a stub for the port on which to invoke operations.
- Associate the request with the subscription to pause. The subscriptionEPR is the EndpointReference returned by the invocation of the Subscribe operation.
- Create any optional information.
- Invoke the PauseSubscription operation by calling the associated method on the stub.
Example
The following example code describes a JAX-RPC client acting in the subscriber role, pausing a subscription for a consumer application:
// Look up the JAX-RPC service. The JNDI name is specific to your web services client implementation. // The PauseSubscription operation belongs to the SubscriptionManager service InitialContext context = new InitialContext(); javax.xml.rpc.Service service = (javax.xml.rpc.Service) context.lookup("java:comp/env/services/SubscriptionManager"); // Get a stub for the port on which to invoke operations SubscriptionManager stub = (SubscriptionManager) service.getPort(SubscriptionManager.class); // Associate the request with the subscription to pause. The subscriptionEPR is the // EndpointReference returned by the invocation of the Subscribe operation ((Stub) stub)._setProperty(WSAConstants.WSADDRESSING_DESTINATION_EPR, subscriptionEPR); // Create any optional information SOAPElement[] optionalInformation = new SOAPElement[] {}; // Invoke the PauseSubscription operation by calling the associated method on the stub SOAPElement[] additionalReturnedInformation = stub.pauseSubscription(optionalInformation);
JAX-RPC
WS-Notification
Use WS-Notification for publish and subscribe messaging for web services
Secure WS-Notification
Related
WSDL2Java command
WS-Notification troubleshooting tips