FeaturesPluginsDocs & SupportCommunityPartners

Desenvolvendo um processo BPEL assíncrono simples

Este tutorial fornece uma visão geral do projeto de amostra, AsynchronousSample, e mostra o deployment, execução e teste de um processo BPEL assíncrono por meio do pacote NetBeans IDE 6.0 com todos os tempos de execução necessários.

Trata-se de um processo de eco, mas é um eco assíncrono, não um eco síncrono. Um cliente envia uma mensagem ao processo. O processo recebe a mensagem de entrada e retorna imediatamente. Em seguida, o processo chama de forma assíncrona o cliente original e envia a mesma mensagem de volta. Um processo assíncrono é usado quando o processo BPEL é de longa execução (leva um longo tempo para computar o resultado). Os resultados são retornados para o cliente por meio da chamada no cliente. Neste tutorial, você usará um projeto BPEL simples chamado AsynchronousSample e um projeto de aplicação composta chamado AsynchronousSampleApplication. O projeto inclui os arquivos WSDL e de esquema, um descritor de deployment e os arquivos de entrada para teste. A interface do serviço Web desse processo é uma única operação assíncrona.

Duração esperada: 30 minutos

Requisitos do tutorial

Antes de prosseguir, revise os requisitos nesta seção.

Pré-requisitos

Este tutorial presume que você possui algum conhecimento básico ou experiência de programação na linguagem e na plataforma Java e no NetBeans IDE.

Requisitos do sistema

Este tutorial presume que o seu sistema atende aos requisitos especificados no tópico Requisitos do sistema das Notas de versão do NetBeans IDE 6.0.

Software necessário para o tutorial

Antes de começar, você precisa instalar o software seguinte em seu computador: NetBeans IDE 6.0 com SOA e o servidor da aplicação GlassFish, incluído no download "Todos" disponível no Download do NetBeans IDE 6.0.

início


Configurando e iniciando o servidor da aplicação GlassFish

Quando o download completo do NetBeans 6.0 é instalado, ele inclui o servidor da aplicação GlassFish. O NetBeans IDE iniciará automaticamente o servidor da aplicação quando necessário.

Para iniciar o servidor da aplicação GlassFish:

  1. Se a janela Serviços não estiver visível, escolha Janela > Serviços.
  2. Na janela Serviços, expanda o nó Servidores.
    O nó Servidores deve conter um subnó do servidor da aplicação GlassFish. Se o nó do servidor da aplicação GlassFish não aparecer, vá para Para configurar o servidor da aplicação GlassFish.

 

  1. Clique com o botão direito do mouse no nó do servidor da aplicação GlassFish e selecione Iniciar.
    A janela de saída exibe informações de log sobre a inicialização da aplicação. Se a janela de saída não estiver visível, escolha Janela > Saída > Saída.

    Quando a mensagem Inicialização do servidor da aplicação concluída aparecer na janela Saída, o servidor da aplicação estará em execução.
    Observação: se um emblema com uma seta verde aparecer no nó do servidor da aplicação GlassFish, o servidor estará sendo executado.

Observação: a implantação de uma aplicação no servidor da aplicação GlassFish iniciará automaticamente o servidor. Assim, não é necessário iniciar manualmente o servidor da aplicação.

Observação: o procedimento seguinte mostra como configurar o IDE para usar uma versão alternativa do servidor da aplicação GlassFish V2.

Para configurar o servidor da aplicação GlassFish V2:

Você pode querer usar uma versão diferente do servidor da aplicação daquela fornecida com o NetBeans 6.0. Por exemplo, pode querer baixar e instalar uma versão mais atual do servidor da aplicação GlassFish V2 do site da comunidade do GlassFish.

O seguinte procedimento mostra como configurar o NetBeans 6.0 IDE para usar uma versão alternativa do servidor da aplicação GlassFish V2. Ele supõe que você tenha baixado e instalado a versão alternativa do servidor da aplicação.

  1. Na janela Serviços, clique com o botão direito do mouse no nó Servidores e escolha Adicionar servidor no menu pop-up.
    A caixa de diálogo Adicionar instância do servidor é aberta.
  2. Na página Escolher servidor, selecione GlassFish V2 na lista.
  3. Clique em Próximo.
    A página Localização da pasta da plataforma é aberta.
  4. No campo Localização da plataforma, use o botão Procurar para navegar para o local de instalação do servidor da aplicação e selecionar esse local.

    Se você tiver instalado o servidor da aplicação GlassFish no local padrão, use a Tabela 1 como um guia para localizar a instalação. Caso contrário, navegue para a localização onde você instalou o servidor da aplicação GlassFish V2.

    Tabela 1: diretório padrão de instalação do servidor da aplicação

    Plataforma Instalando como... Instalação da SOA Instalação do conjunto de ferramentas
    Solaris OS
    Linux
    raiz /opt/glassfish-v2 /opt/SUNWappserver
    Solaris OS
    Linux
    usuário ~/glassfish-v2 ~/SUNWappserver
    Mac OS X N/D /Applications/NetBeans/glassfish-v2b58g /Applications/NetBeans/NetBeans 6.0
    Windows N/D C:\Program Files\glassfish-v2-b58g C:\Sun\AppServer
  5. Selecione o botão de opção Registrar o domínio local padrão e clique em Próximo.
  6. Indique o nome de usuário e a senha do administrador do domínio.
    Caso você tenha aceito os valores padrão durante a instalação, o nome de usuário é admin e a senha é adminadmin.
  7. Clique em Terminar.

início

Abrindo o projeto AsynchronousSample

  1. No menu principal do IDE, escolha Arquivo > Novo projeto.
    O assistente para novo projeto é aberto.
  2. Na lista Categorias, selecione Amostras>SOA.
  3. Na lista Projetos, selecione Processo BPEL assíncrono.

    Processo BPEL assíncrono selecionado

  4. Clique em Próximo.
  5. No campo Nome do projeto, digite AsynchronousSample.

    Digitando o nome do projeto

  6. (Opcional) No campo Local do projeto, use o botão Explorar para navegar e selecionar uma pasta diferente, onde o IDE armazenará os arquivos do projeto.
  7. Clique em Terminar.
    A janela Projetos agora contém dois nós de projeto: um para um projeto BPEL chamado AsynchronousSample, e um para um projeto de aplicação composta chamado AsynchronousSampleApplication.

início


Explorando o projeto BPEL e JBI na janela Projetos

  1. Na janela Projetos, expanda o nó AsynchronousSample e expanda o nó Arquivos do processo.
    O nó Arquivos do processo contém estes itens:
    • AsynchronousSample.bpel, o processo BPEL
    • AsynchronousSample.wsdl, a interface do serviço Web do processo
    • AsynchronousSample.xsd, o arquivo do esquema.
    • AsynchronousSampleClient.bpel, o processo do cliente de teste.
    • AsynchronousSampleClient.wsdl, o wsdl do processo do cliente
  2. Na janela Projetos, expanda o nó AsynchronousSampleApplication . O projeto de deployment JBI contém:
    • Processar arquivos
    • Módulos JBI
    • Teste

    AsynchronousSample expandido

  3. Clique duas vezes no nó AsynchronousSample.bpel.
    Observe o seguinte:
    • O Editor de código-fonte contém uma aba para AsynchronousSample.bpel.
    • O diagrama AsynchronousSample é mostrado na exibição Design.
      A visualização Design é o designer visual dos processos comerciais. Nessa visualização, você pode modelar visualmente um processo comercial. A ferramenta BPEL Design gera automaticamente o código BPEL que corresponde ao design visual.
    • A Paleta de elementos BPEL é aberta à direita do Editor de código-fonte.
    • A janela Navegador mostra a visualização lógica BPEL do processo BPEL.

    AsynchronousSample.bpel expandido
    Clique para ampliar

início


Explorando o AsynchronousSampleClient na janela Projetos

O projeto AsynchronousSample é um processo BPEL assíncrono. Testar um processo assíncrono requer um cliente que seja capaz de receber um retorno de chamada assíncrono. Portanto, o projeto também contém um processo BPEL AsynchronousSampleClient. O único propósito do processo AsynchronousSampleClient é facilitar o teste de unidade do AsynchronousSample.

  1. Clique duas vezes no nó AsynchronousSampleClient.bpel.
    O IDE exibe o diagrama AsynchronousSampleClient na visualização Design.
    Observe que AsynchronousSample ( partnerLinkB ) faz uma chamada no AsynchronousSampleClient para retornar a resposta.

    Diagrama AsynchronousSampleClient

  2. Clique duas vezes na atividade de recepção receiveCallback no processo AsynchronousSampleClient.
    O editor de propriedades de receiveCallback se abre.
  3. Clique na aba Correlações, selecione a linha do correlator e clique em Editar.
    O editor para editar o conjunto de correlações é exibido.
    Observe que agora a correlação é usada para correlacionar a resposta para a instância correta de AsynchronousSampleClient.

    Editor para editar o conjunto de correlações

início


Implantando o projeto no servidor da aplicação

Observe que um projeto BPEL não pode ser implantado diretamente. Ele deve ser adicionado como um módulo JBI a um projeto de aplicação composta. Em seguida, você pode implantar o projeto de aplicação composta. O deployment do projeto torna a composição do serviço disponível no servidor da aplicação, permitindo, portanto, que suas unidades de serviço sejam executadas.

  1. Expanda AsynchronousSampleApplication > Módulos JBI.
    Garanta que o nó AsynchronousSample.jar seja adicionado.

    AsynchronousSample.jar adicionado ao projeto de aplicação composta

  2. Clique com o botão direito do mouse no nó do projeto AsynchronousSampleApplication e escolha Implantar.
  3. Na caixa de diálogo Aviso, verifique se GlassFish V2 está selecionado e clique em OK.
  4. O deployment foi bem-sucedido se aparecer a seguinte mensagem na janela Saída:

    Deployment bem-sucedido

  5. Se a janela Saída não estiver visível, escolha Janela > Saída.

início


Testando o AsynchronousSampleApplication

  1. Na janela Projetos, expanda o AsynchronousSampleApplication > Teste > NewTestcase0. O nó NewTestcase0 contém dois arquivos XML:
    • Input.xml para entrada
    • Output.xml para saída
    Cada vez que o teste é executado, a saída atual é comparada com o conteúdo de Output.xml.

    NewTestcase0

  2. Clique com o botão direito do mouse no nó do projeto AsynchronousSampleApplication e escolha Testar no menu pop-up.
    A mensagem seguinte é exibida na janela Saída:

    NewTestcase0 passou

Veja também


início

Bookmark this page

del.icio.us furl simpy slashdot technorati digg
Companion
Projects:
MySQL Database Server   Open JDK: an Open SourceJDK   GlassFish Community: an Open Source Application Server    Mobile & Embedded Community    Open Solaris   java.net - The Source for Java Technology Collaboration   Virtual Box - full virtualizer  Open ESB - The Open Enterprise Service Bus Powered by