Topologia para WS-Notification como um ponto de entrada ou de saída para o barramento de integração de serviços
Além da capacidade de passar informações entre produtores e consumidores WS-Notification, o suporte WS-Notification fornecido no WebSphere Application Server também atua como um ponto de entrada ou saída para o barramento de integração de serviços. As notificações de eventos que são publicadas por aplicativos do WS-Notification são inseridas no barramento de integração de serviço no qual elas podem ser modificadas, roteadas novamente ou consumidas por qualquer um dos outros aplicativos que estão conectados ao barramento. De forma semelhante, as publicações enviadas por clientes do barramento de integração de serviço, como JMS, podem ser recebidas por consumidores do WS-Notification.
Você pode configurar o WS-Notification para que os aplicativos de serviço da Web recebam notificações de eventos geradas por outros clientes do barramento de integração de serviço, como clientes JMS. De forma semelhante, os aplicativos de serviço da Web podem gerar notificações para serem recebidas por outros tipos de clientes. Você obtém esta configuração criando um namespace de tópico permanente que permite o compartilhamento de mensagens entre clientes de serviço da Web e de não serviço da Web do barramento, conforme descrito em Fornecendo Acesso para Aplicativos do WS-Notification a um Espaço de Tópico do Barramento Existente.
Na figura a seguir, um publicador de WS-Notification insere uma notificação de eventos no broker de notificação que é recebido por um consumidor de mensagem JMS. Em contrapartida, um produtor de mensagem JMS pode publicar uma mensagem que é recebida por um consumidor de notificação. As mensagens passam do publicador para o broker de notificação, usando SOAP sobre HTTP, e viajam por um WebSphere Application Server, para o provedor JMS, e até o consumidor da mensagem JMS usando JFAP. Em contrapartida, as mensagens passam do produtor de mensagem JMS até o provedor JMS usando JFAP, e viajam por um WebSphere Application Server até o broker de notificação, e até o consumidor de notificação usando SOAP sobre HTTP.

Interagindo com Tipos de Mensagens JMS
O serviço WS-Notification é responsável por inserir mensagens no barramento de integração de serviços (em resposta a operações Notify recebidas de serviços da Web) e pelo recebimento de mensagens do barramento (para passar mensagens para um serviço da Web como resultado de uma operação Subscribe).
As mensagens inseridas pelo serviço WS-Notification são do tipo JMS BytesMessage, portanto, quando um serviço da Web chama a operação Notify em um ponto de serviço WS-Notification, o conteúdo do aplicativo da mensagem é inserido no corpo de uma JMS BytesMessage usando a codificação UTF-8.
Para mensagens recebidas pelo serviço WS-Notification em resposta a uma assinatura, a conversão inversa é aplicada. A mensagem recebida é convertida no tipo de mensagem JMS apropriado. Se o tipo apropriado for determinado como um tipo BytesMessage, o corpo da mensagem será convertido em uma sequência usando a codificação UTF-8 e continuará pelo código para verificação, antes de ser enviado para o serviço da Web solicitante.
Se a cadeia BytesMessage convertida não contiver um elemento XML quando convertida em uma cadeia, esta mensagem será ignorada como tendo sido originada por um aplicativo não reconhecido por WS-Notification (JMS).
Se a mensagem recebida for determinada para ser um TextMessage, o conteúdo do corpo da mensagem será extraído e o processamento continuará da mesma maneira que para o conteúdo de BytesMessage convertido. Isto significa que os aplicativos JMS que desejam fornecer notificações de eventos para um aplicativo WS-Notification podem optar por enviar o conteúdo como um BytesMessage ou um TextMessage, dependendo do que for mais conveniente para o aplicativo.
Se a mensagem recebida não for uma BytesMessage nem uma TextMessage, ela será descartada como tendo sido originada por um aplicativo não reconhecido por WS-Notification (JMS).