Sobre a Amostra Scribble

A amostra Scribble utiliza o tipo de sistema de mensagens de publicação/assinatura para transportar dados. Para obter informações adicionais, leia sobre sistema de mensagens de publicação/assinatura na documentação do WebSphere Message Broker.

ScribblePublisher e ScribbleSubscriber podem transportar mensagens de publicação utilizando o transporte do WebSphere MQ ou o transporte do WebSphere MQ Real-time. As mensagens são formatadas de acordo com o tipo de transporte que você selecionou quando iniciou cada aplicativo e o formato da mensagem determina a maneira como as mensagens entram e saem do fluxo de mensagens. Todas as mensagens de publicação são transmitidas através do fluxo de mensagens, seja qual for o formato da mensagem.

A amostra Scribble executa as seguintes ações:

  1. Ao iniciar o aplicativo ScribbleSubscriber, ele assina os tópicos scribble/coords e scribble/clear.
  2. Quando você começa a desenhar na janela do ScribblePublisher, o ScribblePublisher publica as coordenadas de seu desenho no tópico scribble/coords para o fluxo de mensagens ScribblePublish.
  3. O fluxo de mensagens verifica se a mensagem foi publicada no tópico scribble/coords e transforma as coordenadas na mensagem de publicação.
  4. O aplicativo ScribbleSubscriber recebe as mensagens que contêm as coordenadas transformadas, porque ele está designado a publicações do tópico scribble/coords.
  5. Ao clicar em Limpar no aplicativo ScribblePublisher, ScribblePublisher publica uma mensagem sobre o tópico scribble/clear no fluxo de mensagens ScribblePublish.
  6. O fluxo de mensagens não transforma os dados da mensagem, porque a mensagem não foi publicada no tópico scribble/coords.
  7. O aplicativo ScribbleSubscriber recebe a mensagem porque ele assinou as publicações sobre o tópico scribble/clear.

As seguintes seções descrevem os recursos da amostra em mais detalhes:

As Mensagens

A amostra Scribble utiliza dois formatos de mensagens JMS:

Todas as mensagens têm um gabarito de mensagem padrão contendo as seguintes partes:

Quando o aplicativo ScribblePublisher publica mensagens utilizando o tipo de transporte de mensagem de Tempo Real, a mensagem de publicação é formatada de maneira diferente de quando o ScribblePublisher publica mensagens utilizando o tipo de transporte de mensagem do WebSphere MQ. Contudo, o nó Filter no fluxo de mensagens ScribblePublish somente pode analisar mensagens que estejam formatadas para transporte do WebSphere MQ. Devido a isso, o nó Real-time Input transforma o formato das mensagens de Tempo Real para mensagens do WebSphere MQ para que os nós do fluxo de mensagens possam analisar as mensagens.

O nó Publication no fluxo de mensagens publica mensagens do WebSphere MQ para aplicativos ScribbleSubscriber que estejam utilizando o transporte de mensagem do WebSphere MQ. Contudo, se ScribbleSubscriber utilizar o transporte de Tempo Real, o nó Publication transformará o formato da mensagem para Tempo Real quando publicar as mensagens.

Para obter informações adicionais, leia sobre domínios JMS na documentação do WebSphere Message Broker.

O Fluxo de Mensagens

A figura a seguir mostra o fluxo de mensagens ScribblePublish, que processa as mensagens de publicação na amostra Scribble.

Uma Captura de Tela do Fluxo de Mensagens ScribblePublish.

A tabela a seguir lista os tipos de nós que são utilizados no fluxo de mensagens ScribblePublish.

Tipo de Nó Nome do Nó
MQInput SCRIBBLE_PUBLICATION
Real-timeInput Real-timeInput
Filter Filter On Topic
Compute Invert Coordinates
Publicação Publicação

Para obter informações adicionais, leia sobre os nós no fluxo de mensagens ScribblePublish na documentação do WebSphere Message Broker.

O fluxo de mensagens ScribblePublish transforma as coordenadas publicadas no aplicativo ScribblePublisher e, em seguida, publica as novas coordenadas no aplicativo ScribbleSubscriber. Para obter informações adicionais, leia sobre fluxos de mensagens e transformação de mensagens na documentação do WebSphere Message Broker.

O fluxo de mensagens ScribblePublish executa as seguintes ações:

  1. Obtém a mensagem de publicação. A maneira como o fluxo de mensagens obtém a mensagem de entrada depende da formatação da mensagem:
  2. Filtra a mensagem de publicação em seu tópico:
  3. Transforma as coordenadas que foram publicadas no tópico scribble/coords, para que possam ser exibidas invertidas no aplicativo ScribbleSubscriber.
  4. Emite a saída da mensagem. A maneira como a mensagem sai do fluxo de mensagens depende do domínio da mensagem do aplicativo assinante:

As mensagens são transmitidas através do fluxo de mensagens, conforme descrito, independente do tipo de transporte de sistema de mensagens utilizado pelos aplicativos publicador e assinante. Contudo, como os nós Filter e Compute no fluxo de mensagens podem analisar somente mensagens que sejam formatadas para transporte pelo WebSphere MQ, o nó Real-timeInput transforma mensagens de Tempo Real em mensagens do WebSphere MQ. Da mesma forma, o nó Publication transforma mensagens do WebSphere MQ em mensagens de Tempo Real, se ele as estiver publicando para a porta Real-time.

O ESQL

Para visualizar o ESQL utilizado no fluxo de mensagens ScribblePublish no workbench:

  1. No workbench, alterne para a perspectiva Desenvolvimento de Aplicativos do Intermediário.
  2. Na visualização do Navegador de Recursos, dê um clique duplo em ScribblePublish.esql para abri-lo no editor ESQL.

O ESQL para o nó Filter On Topic está contido no módulo ScribblePublish_Filter e o ESQL para o nó Invert Coordinates está contido no módulo ScribblePublish_Compute. Para obter informações adicionais, leia sobre ESQL na documentação do WebSphere Message Broker.

Os Transportes de Mensagens

Os aplicativos ScribblePublisher e ScribbleSubscriber publicam informações em mensagens JMS. Ambos os aplicativos podem transportar as mensagens utilizando transporte de mensagens do WebSphere MQ ou de Tempo Real.

Transporte do WebSphere MQ

Quando um aplicativo Scribble utiliza o WebSphere MQ para transportar suas mensagens de publicação, ele interage com as filas locais do WebSphere MQ mostradas na tabela a seguir.

Como o Fluxo de Mensagens Utiliza a Fila
SCRIBBLE_PUBLICATION O fluxo de mensagens obtém publicações de eventos que foram publicadas na fila pelo aplicativo ScribblePublisher.
SYSTEM.JMS.ND.SUBSCRIBER.QUEUE O fluxo de mensagens coloca publicações na fila para o aplicativo ScribbleSubscriber receber e publicar no intermediário.

Para obter informações adicionais sobre o WebSphere MQ, consulte a documentação do produto WebSphere MQ.

Transporte do WebSphere MQ Real-time

Quando um aplicativo Scribble utiliza Tempo Real para transportar suas mensagens de publicação, ele não interage com filas do WebSphere MQ. Em vez disso, ScribblePublisher publica para uma porta Real-time e o ScribbleSubscriber obtém publicações da mesma porta Real-time. Nesta amostra, o número da porta do Real-time é 1566. Para obter informações adicionais, leia sobre Transporte do WebSphere MQ Real-time na documentação do WebSphere Message Broker.

Ícone Página Principal   Voltar para Home da Amostra