Configurando a Amostra Address Book para Usar o Transporte JMS
Nesta amostra, o WebSphere MQ é usado como o provedor JMS, portanto, você deve criar os objetos administrados usando a ferramenta JMSAdmin.
Se você estiver executando a amostra no Linux, deve incluir a classe JMSAdmin no caminho de classe. Inclua o seguinte arquivo em seu caminho de classe:
<mq_install_directory>/java/lib/com.ibm.mqjms.jar
Para incluir o local do Java em sua variável PATH, inclua o seguinte arquivo em seu caminho de classe:
<JAVA_HOME>/bin
Criando os Objetos Administrados Usando JMSAdmin
O WebSphere MQ é instalado no diretório mq_install_dir.
A ferramenta JMSAdmin e o arquivo de configuração JMSAdmin estão localizados em mq_install_dir/java/bin no Linux, e mq_install_dir\java\bin no Windows.
No projeto de fluxo de amostra do catálogo de endereços, você deve usar o arquivo AddressBookSample.defs com a ferramenta JMSAdmin.
Antes de poder usar a ferramenta JMSAdmin, você deve modificar o arquivo JMSAdmin.config como mostrado nas instruções a seguir.
Modificando o arquivo JMSAdmin.config
Para modificar o arquivo JMSAdmin.config:
- No editor de texto, abra o arquivo JMSAdmin.config.
- Para comentar qualquer opção que não seja necessária, inclua um sinal numérico (#). Para remover o comentário de qualquer opção necessária, remova um sinal numérico (#).
# A seguinte linha especifica que o fornecedor de serviços JNDI está em uso.
# Ela atualmente indica um Contexto do Sistema de Arquivos. Caso um provedor de
# serviços diferente seja usado, essa linha deverá ser comentada e
# daquela apropriada deve ter-se retirado o comentário.
#
# com.sun.jndi.fscontext.RefFSContextFactory is the FileSystem JNDI Context
#
#INITIAL_CONTEXT_FACTORY=com.sun.jndi.ldap.LdapCtxFactory
INITIAL_CONTEXT_FACTORY=com.sun.jndi.fscontext.RefFSContextFactory
#INITIAL_CONTEXT_FACTORY=com.ibm.ejs.ns.jndi.CNInitialContextFactory
#INITIAL_CONTEXT_FACTORY=com.ibm.websphere.naming.WsnInitialContextFactory
#
# A linha a seguir especifica a URL do
# contexto inicial para o provedor de serviço. Ela atualmente refere-se a um Contexto do Sistema de Arquivos.
# Exemplos de uma URL de contexto de raiz LDAP e o espaço de nomes JNDI
# para o WebSphere também são mostrados, comentados na linha.
#
#PROVIDER_URL=ldap://localhost/o=ibm,c=us
PROVIDER_URL=file:/C:/SOAPJNDIBindings
#PROVIDER_URL=iiop://localhost/
- Salve o arquivo, em seguida, crie o diretório JNDI-Directory conforme mostrado na linha PROVIDER_URL.
Agora você pode criar os objetos.
Criando os Objetos
Executando a ferramenta WebSphere MQ JMSAdmin você cria os objetos administrados JNDI para configurar os Connection Factories do JMS e os Destinos que são usados na amostra.
A ferramenta JMSAdmin usa o arquivo AddressBookSample.defs como entrada.
Você cria os objetos executando o JMSAdmin e usando o arquivo AddressBookSample.defs
como entrada.
Na linha de comandos, digite os seguintes comandos:
O WebSphere MQ está instalado no seguinte local: mq_install_dir,
e workspace_path é o caminho integral para o diretório da área de trabalho do WebSphere Message Broker Toolkit.
Os objetos e o arquivo .bindings são criados.
Configurando os Nós SOAP para Usar JMS
- Abra o fluxo de mensagens AddressBook.AddressBookProviderFlow.msgflow no editor de fluxo de mensagens.
- Clique com o botão direito do mouse em Entrada SOAP no fluxo de mensagens e clique em Propriedades para mostrar a visualização Propriedades.
- Na visualização Propriedades, selecione a guia Básicas.
- O valor do campo Ligação Importada é configurado como
AddressBookPortBinding e o valor da propriedade Transporte é configurado como HTTP. Usando a lista suspensa, altere o valor de Ligação Importada para AddressBookJMSBinding.
O valor da propriedade Transporte é alterado para JMS.
- Abra o fluxo de mensagens AddressBook.AddressBookConsumerFlow.msgflow no editor de Fluxo de Mensagens para configurar o nó SOAPRequest para usar o transporte JMS.
- Clique com o botão direito do mouse no nó findAddress SOAPRequest no fluxo de mensagens e clique em Propriedades para mostrar a visualização Propriedades.
- Na visualização Propriedades, selecione a guia Básicas.
- O valor do campo Ligação Importada é configurado como
AddressBookPortBinding. Usando a lista suspensa, altere o valor de Ligação Importada para AddressBookJMSBinding.
- Altere o valor da propriedade Operação de Ligação para FindAddress.
- Certifique-se de que o valor da propriedade Transporte seja JMS.
- Selecione o nó saveAddress SOAPRequest no fluxo de mensagens e acesse a visualização Propriedades.
- Na visualização Propriedades, selecione a guia Básicas.
- O valor do campo Ligação Importada é configurado como
AddressBookPortBinding. Usando a lista suspensa, altere o valor de Ligação Importada para AddressBookJMSBinding.
- Altere o valor da propriedade Operação de Ligação para SaveAddress.
- Certifique-se de que o valor da propriedade Transporte seja JMS.
Configurando o Caminho JNDI no Fluxo de Mensagens
- No Windows:
Os nós SOAP já estão configurados com o local do arquivo.bindings.
Entretanto, se você tiver criado um arquivo .bindings em um local diferente, você deve reconfigurar os nós SOAP com o local diferente do arquivo.bindings. Siga as etapas na seção a seguir: "Configurando os nós SOAP com o local do arquivo .bindings."
- No Linux:
Para assegurar que os nós SOAP nos fluxos de mensagens saibam o local do arquivo
.bindings que você criou, siga as etapas dadas na seção
a seguir: "Configurando os nós SOAP com o local do arquivo.bindings."
Configurando os nós SOAP com o local do arquivo .bindings:
- Abra o fluxo de mensagens AddressBook.AddressBookProviderFlow.msgflow no editor de fluxo de mensagens.
- Clique com o botão direito do mouse no nó SOAP Input no fluxo de mensagens e clique em Propriedades para mostrar a visualização Propriedades.
- Na visualização Propriedades, selecione a guia Transporte JMS .
- No campo Ligações da URL de JNDI de Local, insira o caminho que está especificado na linha PROVIDER_URL do arquivoJMSAdmin.config.
- No Linux: Digite file:///home/myuser/SOAPJNDIBindings, em que myuser é o nome do usuário que você usou para executar o broker.
- No Windows: Se você tiver modificado o local do arquivo.bindings,
digite o novo local, caso contrário, deixe o valor como file:/C:/SOAPJNDIBindings.
- Certifique-se de que o caminho inserido nas propriedades do nó corresponda ao caminho no arquivo JMSAdmin.config. Se os dois caminhos não corresponderem, os fluxos de mensagens não funcionarão.
- Salve o fluxo de mensagens.
- Abra o fluxo de mensagens AddressBook.AddressBookConsumerFlow.msgflow
no Editor do Fluxo de Mensagens para configurar os nós SOAPRequest com o local do arquivo .bindings usando as etapas anteriores.
- Os fluxos de mensagens estão agora configurados e prontos para serem implementados no intermediário.
Recriando o Arquivo BAR e Implementando os Fluxos de Mensagens
Para implementar os fluxos modificados AddressBookConsumerFlow e
AddressBookProviderFlow, reconstrua um arquivo broker archive (BAR) que contenha
ambos os fluxos de mensagens.
Crie o arquivo BAR:
- Clique duas vezes no arquivo BAR: AddressBook.AddressSampleConsumer.bar.
- Na guia Gerenciar, clique em Construir
para reconstruir o arquivo BAR.
- Salve o arquivo BAR criado.
- Clique duas vezes no arquivo BAR: AddressBook.AddressSampleProvider.bar.
- Na guia Gerenciar, clique em Construir
para reconstruir o arquivo BAR.
- Salve o arquivo BAR criado.
- Na visualização Brokers, clique no arquivo BAR e arraste cada
arquivo BAR, um por um, para o grupo de execução padrão na visualização Brokers.
Esta ação implementa os fluxos no intermediário.
Agora você está pronto para executar a amostra.
Voltar para Home da Amostra