Exemplo: Pausando uma Assinatura do WS-Notification

Use esta tarefa para gravar o código de um cliente JAX-RPC que atua na função de assinante, pausando uma assinatura de um aplicativo consumidor, com base na extração do código de exemplo fornecida.

Sobre Esta Tarefa

Esse exemplo é baseado no uso de APIs Java™ API for XML-based remote procedure calls (JAX-RPC) com código gerado usando a ferramenta WSDL2Java (executada com relação ao WSDL do Broker de Notificação gerado como resultado da criação do ponto de serviço WS-Notification) e as APIs e SPIs do WebSphere Application Server.

No WebSphere Application Server existem duas implementações do serviço WS-Notification: Versão 6.1 e Versão 7.0. Este exemplo de JAX-RPC pode interagir com êxito com os pontos de serviço do WS-Notification Versão 6.1 ou Versão 7.0. No entanto, se quiser usar WS-Notification com conjuntos de políticas, por exemplo, para ativar a composição com WS-ReliableMessaging, seus aplicativos WS-Notification deverão ser codificados para usar o modelo de programação Java API for XML-based Web Services (JAX-WS) e deverão interagir com os pontos de serviço WS-Notification Versão 7.0. Se você for iniciante na programação de aplicativos clientes JAX-WS, consulte os seguintes tópicos:

Procedimento

  1. Procure o serviço JAX-RPC. O nome JNDI é específico de sua implementação do cliente de serviço da web. A operação PauseSubscription pertence ao serviço SubscriptionManager.
  2. Obtenha um stub para a porta na qual deseja chamar operações.
  3. Associe a solicitação à assinatura que você deseja pausar. O subscriptionEPR é o EndpointReference retornado pela chamada da operação Subscribe.
  4. Crie as informações opcionais.
  5. Chame a operação PauseSubscription, chamando o método associado no stub.

Exemplo

O código de exemplo a seguir descreve um cliente JAX-RPC que atua na função de assinante, pausando uma solicitação de um aplicativo cliente:

// Look up the JAX-RPC service. The JNDI name is specific to your web services client implementation.
// A operação PauseSubscription pertence ao serviço SubscriptionManager
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 you want to invoke operations
SubscriptionManager stub = (SubscriptionManager) service.getPort(SubscriptionManager.class);

// Associar o pedido à assinatura que você deseja pausar. O subscriptionEPR é o
// EndpointReference retornado pela chamada da operação Subscribe
((Stub) stub)._setProperty(WSAConstants.WSADDRESSING_DESTINATION_EPR, subscriptionEPR);

// Criar informações opcionais
SOAPElement[] optionalInformation = new SOAPElement[] {};

// Chamar a operação PauseSubscription chamando o método associado no stub
SOAPElement[] additionalReturnedInformation = stub.pauseSubscription(optionalInformation);

Ícone que indica o tipo de tópico Tópico de Tarefa



Ícone de registro de data e hora Última atualização: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=tjwsn_ex_sub_pause
Nome do arquivo: tjwsn_ex_sub_pause.html