Exemplo: Obtendo Mensagens de um Ponto de Pull do WS-Notification

Use esta tarefa para gravar o código de um cliente JAX-RPC que atua na função de consumidor de estilo de Pull, solicitando mensagens de um ponto de pull, com base na extração de 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:

Para gravar o código de um cliente JAX-RPC que atua na função de consumidor de estilo de Pull, solicitando mensagens de um ponto de Pull, conclua as etapas a seguir, consultando a extração do código de exemplo para obter informações adicionais.

Procedimento

  1. Procure o serviço JAX-RPC. O nome JNDI é específico de sua implementação do cliente de serviço da web.
  2. Obtenha um stub para a porta na qual deseja chamar operações.
  3. Associe a solicitação a um ponto de Pull. O pullPointEPR é o EndpointReference retornado pela chamada da operação CreatePullPoint.
  4. Especifique o número de mensagens que deseja recuperar.
  5. Crie as informações opcionais.
  6. Crie as informações da solicitação.
  7. Chame a operação GetMessages, chamando o método associado no stub.
  8. Obtenha as mensagens retornadas na resposta.

Exemplo

O código de exemplo a seguir descreve um cliente JAX-RPC que atua na função de consumidor de estilo de Pull, solicitando mensagens de um ponto de Pull:

// Look up the JAX-RPC service. The JNDI name is specific to your web services client implementation
InitialContext context = new InitialContext();
javax.xml.rpc.Service service = (javax.xml.rpc.Service) context.lookup(
    "java:comp/env/services/NotificationBroker");

// Get a stub for the port on which you want to invoke operations
NotificationBroker stub = (NotificationBroker) service.getPort(NotificationBroker.class);

// Associar o pedido a um ponto de pull. O pullPointEPR é o EndpointReference retornado
// da chamada da operação CreatePullPoint
((Stub) stub)._setProperty(WSAConstants.WSADDRESSING_DESTINATION_EPR, pullPointEPR);

// Especifique o número de mensagens que deseja recuperar
Integer numberOfMessages = new Integer(2);

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

// Criar as informações do pedido
GetMessages request = new GetMessages(numberOfMessages, optionalInformation);

// Chamar a operação GetMessages chamando o método associado no stub
GetMessagesResponse response = stub.getMessages(request);

// Obter as mensagens retornadas da resposta
NotificationMessage[] messages = response.getMessages();

Í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_pp_get
Nome do arquivo: tjwsn_ex_pp_get.html