corner imagecorner image
FeaturesPluginsDocs & SupportCommunityPartners

Guia do desenvolvedor para BPEL Designer

O elemento Processo

O elemento Processo já existe em seu diagrama. O assistente para Novo projeto sempre cria um arquivo BPEL de esqueleto que contém pelo menos um elemento Processo. Portanto, o elemento Processo não faz parte da Paleta. A existência do elemento Processo é presumida, já que é o requisito mínimo de um arquivo BPEL.

A captura de tela seguinte mostra a representação de um processo na amostra Serviço de reserva de viagens.

Elemento Processo

Uso

  1. Clique com o botão direito do mouse no elemento Processo e escolha Adicionar no menu pop-up para adicionar o seguinte:
  2. Especifique as propriedades do elemento Processo na janela Propriedades. Para chamar a janela, clique com o botão direito do mouse no elemento e escolha Propriedades ou escolha Janela > Propriedades (Ctrl-Shift-7) no menu principal.

Processos

Um processo BPEL pode ser síncrono ou assíncrono. Um processo BPEL síncrono bloqueia o cliente (aquele que está usando o processo) até que o processo termine e retorne um resultado para o cliente. Um processo assíncrono não bloqueia o cliente. Em vez disso, ele usa um retorno de chamada para retornar o resultado (se houver). Geralmente, os processos assíncronos são usados para processos de longa duração, e os síncronos são usados para processos que retornam um resultado em um tempo relativamente curto. Se um processo BPEL usa serviços Web assíncronos, o próprio processo geralmente também é assíncrono.

Usando o elemento Chamar

O elemento Chamar permite que o processo comercial chame uma operação unidirecional ou de solicitação-resposta em um portType oferecido por um parceiro. Ele permite que o processo comercial envie mensagens para parceiros.

Uso

  1. Na visualização Design, arraste o elemento Chamar da Paleta para o diagrama.
  2. Realize um dos seguintes procedimentos para associar o elemento Chamar a um elemento Link de parceiro:
    • Desenhe diretamente um fluxo de mensagem a partir do elemento Chamar para o Link de parceiro de destino.
    • Clique duas vezes no elemento Chamar (ou clique com o botão direito do mouse nele e escolha Editar). É aberta uma caixa de diálogo Editor de propriedades, na qual você pode examinar ou alterar o seguinte:
      • O nome do elemento Chamar.
      • O link de parceiro a ser chamado.
      • A operação associada ao elemento Chamar.
        Observe que a operação é definida no arquivo WSDL do parceiro.
      • As variáveis de entrada e de saída associadas ao elemento Chamar.

      A aba principal do editor de propriedades do elemento Chamar

    Na caixa de diálogo Editor de propriedades, você pode criar uma variável existente para conter dados de entrada e de saída. Clique no botão Criar para criar uma variável para o elemento Chamar, e clique em Explorar para escolher uma variável existente.

    Observe que quando você clica no botão Explorar, a caixa de diálogo Seletor de variáveis de entrada ou Seletor de variáveis de saída se abre. Nessas caixas de diálogo, está disponível uma caixa de verificação, que restringe a lista de variáveis aquelas que são do tipo correto para a atividade que você está configurando. Dessa forma, a visualização Design ajuda você a desenvolver um código BPEL válido.

    Correlações

    Os conjuntos de correlações nas atividades de chamada, que lidam com operações externas, são usados para validar as mensagens de saída que contêm dados compatíveis com os dados contidos nas instâncias especificadas do conjunto de correlações.

    A aba Correlações na caixa de diálogo Chamar editor de propriedades permite que você examine ou especifique um conjunto de correlações.

    A aba mostra:

    • Nomes dos conjuntos de correlações
    • A iniciação de um correlator
    • O padrão associado à correlação

    Para obter mais informações, consulte Noções básicas sobre correlação. Usando o assistente para Correlação.

Usando o elemento Receber

O elemento Receber faz com que o processo comercial espere que uma mensagem específica chegue.

Uso

  1. Na visualização Design, arraste o elemento Receber da Paleta para o diagrama.
  2. Clique duas vezes no elemento Receber (ou clique com o botão direito do mouse nele e escolha Editar), a caixa de diálogo Editor de propriedades se abre. Na caixa de diálogo, configure o elemento Receber. Eis aqui o exemplo fornecido para a amostra Serviço de reserva de viagens:
    • O nome do elemento Receber (ReceiveItinerary ).
    • O link de parceiro (Travel).
    • A operação associada ao elemento Receber (buildItinerary).
    • A variável de entrada do elemento Receber (ItineraryIn ).

      Clique no botão Explorar para que a variável de entrada abra o seletor de variável de entrada, onde você pode escolher outras variáveis associadas a este processo. Selecione Criar para criar uma nova variável.

    • Caixa de verificação Criar instância. Se selecionada, uma instância do processo BPEL será iniciada quando uma mensagem associada chegar. Observe que a atividade Receber é a primeira atividade em seu processo comercial, a caixa de verificação Criar instância deve ser selecionada.

      A aba principal do editor de propriedades do elemento Receber

    Correlações

    A aba Correlações na caixa de diálogo Editor de propriedades de Receber permite que você examine ou especifique um conjunto de correlações.

    A aba mostra:

    • Nomes dos conjuntos de correlações
    • A iniciação de um correlator

    Para obter mais informações, consulte Noções básicas sobre correlação. Usando o assistente para Correlação.

Você também pode editar algumas das propriedades do elemento na janela Propriedades. Para abrir a janela, clique com o botão direito do mouse no elemento Receber e escolha Propriedades ou escolha Janela > Propriedades (Ctrl-Shift-7) no menu principal.

Janela Propriedades de Receber

Usando o elemento Responder

Use esta atividade para retornar uma mensagem do processo para o mesmo parceiro que iniciou a comunicação. A combinação de atividades Receber e Responder cria uma operação de solicitação-resposta.

Essa atividade é usada em uma interação síncrona, e precisa do mesmo parceiro, tipo de porta e operação que a atividade Receber correspondente do processo.

Uso

  1. Na visualização Design, arraste o elemento Responder da Paleta para o diagrama.
  2. Clique duas vezes no elemento Responder (ou clique com o botão direito do mouse e escolha Editar) para abrir uma caixa de diálogo Editor de propriedades do elemento Responder. Nessa caixa de diálogo, é possível fazer o seguinte:
    • Nomear o elemento.
    • Link de parceiro.
    • Operação.
    • Tipo de resposta: Resposta normal ou Resposta de falha.
      • Selecione Reposta normal se o elemento Responder for usado para o tipo de mensagem de resposta normal. Opcionalmente, especifique a variável de saída: crie uma nova variável de saída ou procure por uma variável existente.
      • Selecione Resposta de falha, se o elemento Responder for usado para enviar uma mensagem de falha. Escolha um nome de falha, opcionalmente, especifique a variável da falha: crie uma nova variável da falha ou procure por uma variável existente.
      Editor de propriedades de Responder
    Correlações

    A aba Correlações no Editor de propriedades de Responder permite que você examine ou especifique um conjunto de correlações.

    A aba mostra:

    • Nomes dos conjuntos de correlações
    • A iniciação de um correlator

    Para obter mais informações, consulte Noções básicas sobre correlação. Usando o assistente para Correlação.

Você também pode editar algumas das propriedades do elemento na janela Propriedades. Para abrir a janela, clique com o botão direito do mouse no elemento Responder e escolha Propriedades ou escolha Janela > Propriedades (Ctrl-Shift-7) no menu principal. , inclui o seguinte:

Janela Propriedades de Responder

Usando o elemento Link de parceiro

Os elementos Link de parceiro identificam as partes que interagem com o seu processo comercial. Cada link é definido por um tipo de link de parceiro e um nome de função.

Tipos de link de parceiro e funções

O tipo determina a relação entre um processo e seus parceiros, definindo as funções executadas por cada serviço em uma conversação. A relação é determinada pela especificação do tipo de porta fornecido por cada serviço para receber mensagens. Cada função especifica um tipo de porta no arquivo WSDL.

As funções determinam o aspecto de conversação deste processo ou seu parceiro. Você usa uma única função para uma operação síncrona, já que os resultados são retornados por meio da mesma operação. Você usa duas funções em uma operação assíncrona, já que a função de parceiro se altera durante um retorno de chamada.

Entretanto, é fácil confundir os links de parceiro e os tipos de link de parceiro:

  • Os tipos de link de parceiro e as funções são extensões WSDL especiais definidas pela especificação BPEL. Sendo assim, eles são definidos em arquivos WSDL, não no arquivo do processo BPEL.
  • Link de parceiro é um elemento BPEL 2.0. Ele é definido no arquivo do processo BPEL.

Os tipos de link de parceiro são pré-requisitos para a definição do elemento Link de parceiro. Um elemento Link de parceiro pode ser definido somente com referência a um determinado tipo de link de parceiro e função que, como mencionado, devem ser definidos no arquivo WSDL.

Uso

Para adicionar o elemento Link de parceiro ao processo BPEL, adote um dos seguintes procedimentos:

  • Arraste o elemento Link de parceiro da Paleta para o diagrama.
  • Arraste um nó de arquivo WSDL do mesmo projeto na janela Projetos para o diagrama.
  • Arraste um nó de arquivo WSDL de um projeto diferente na janela Projetos para o diagrama.
  • Arraste um nó de serviço Web de um projeto EJB ou projeto de aplicação Web na janela Projetos para o diagrama.

Observação: quando você arrasta o nó de serviço Web, o BPEL Designer recupera o arquivo WSDL do servidor da aplicação. Para que a recuperação do arquivo WSDL seja bem-sucedida, o servidor da aplicação tem que estar em execução e o projeto de serviço Web deve estar implantado.

Quando você arrasta o elemento Link de parceiro, um nó de arquivo WSDL ou um nó de serviço Web para o diagrama, o editor de propriedades do link de parceiro é exibido.

O Editor de propriedades do link de parceiro

A caixa de diálogo Editor de propriedades do link de parceiro permite que você estabeleça links de parceiro para seus processos BPEL.

O editor de propriedades do link de parceiro é chamado quando você clica duas vezes em um elemento Link de parceiro no diagrama, ou quando clica com o botão direito do mouse no elemento Link de parceiro e escolhe Editar. O editor de propriedades do link de parceiro também é exibido quando você arrasta o elemento Link de parceiro, um nó de arquivo WSDL ou um nó de serviço Web para o diagrama.

Com o editor de propriedades do link de parceiro, você pode especificar:

  • O nome do link de parceiro
  • O arquivo WSDL associado ao link de parceiro

Mais tarde, você poderá optar entre usar o tipo de link de parceiro existente ou criar um novo tipo de link de parceiro.

Se o arquivo WSDL que você selecionou contiver tipos de link de parceiros, a opção Usar tipo de link de parceiro existente será selecionada e a lista suspensa Tipo de link de parceiro será preenchida com os tipos de link encontrados no arquivo WSDL. Você pode usar um dos tipos de link de parceiro existentes ou selecionar a opção Usar um tipo de link de parceiro recém-criado para criar um novo tipo de link de parceiro.

Se o arquivo WSDL não contiver os tipos de link de parceiro, a opção Usar um tipo de link de parceiro recém-criado será selecionada.

  • Usar tipo de link de parceiro existente
    1. Escolha o tipo de link de parceiro na lista suspensa. Os campos Minha função e/ou Função do parceiro são preenchidos automaticamente.
    2. Para trocar as funções do próprio processo comercial (Minha função) e do parceiro (Função do parceiro), clique no botão Trocar funções.
  • Usar um tipo de link de parceiro recém-criado
    1. Especifique o arquivo WSDL ao qual adicionar um tipo de link de parceiro. Você pode adotar um dos seguintes procedimentos:
      • Adicione o tipo de link de parceiro ao arquivo WSDL do empacotador, conforme sugerido pelo IDE no campo Criar no arquivo por padrão. Se você escolher essa opção, o IDE criará automaticamente o arquivo WSDL do empacotador na estrutura do projeto. Você pode usar os arquivos WSDL do empacotador quando o arquivo WSDL original for somente leitura ou quando não quiser modificar o arquivo WSDL original. O arquivo WSDL original será importado para o arquivo WSDL recém-criado do empacotador.
      • Adicione o tipo de link de parceiro a um arquivo WSDL em seu projeto. Clique em Procurar e localize o arquivo WSDL ao qual adicionar o tipo de link de parceiro.
    2. Especifique o nome do tipo de link de parceiro.
    3. Especifique a função do próprio processo comercial (Minha função) e/ou a função do parceiro (Função do parceiro) da seguinte forma:
      • Marque a caixa de verificação apropriada.
      • Especifique o nome da função.
      • Escolha o tipo de porta na lista suspensa.
Editor de propriedades de PartnerLink

Também é possível consultar e modificar as propriedades de link de parceiro na janela Propriedades chamada quando você clica com o botão direito do mouse no elemento e escolhe Propriedades.

Layout do link de parceiro

Os links de parceiro são colocados à esquerda e à direita do diagrama do processo. Os solicitadores de serviço são colocados no lado esquerdo, os provedores de serviço são colocados no lado direito. Para definir a função e para escolher o lado apropriado para cada link de parceiro, o IDE usa a ordem das funções definidas para o partnerLinkType no arquivo WSDL. A função definida no primeiro partnerLinkType no arquivo WSDL é considerada uma função de serviço, a segunda função definida é considerada a função do solicitador e do recebedor de retorno de chamada. Se as funções são definidas na ordem inversa no arquivo wsdl (a função do recebedor do retorno de chamada é definida em primeiro lugar e a função do serviço em segundo lugar), então, você obtém o layout de link de parceiro incorreto no diagrama do processo BPEL, embora a operação não seja danificada. Se um link de parceiro aparecer no lado errado, você provavelmente tem que ir para o arquivo WSDL e trocar os lugares das definições de função no partnerLinkType.

Endereçamento dinâmico

Às vezes, você precisa se comunicar com o serviço de parceiro cujos pontos finais não são conhecidos antes ou precisa alterar uma referência de ponto final (EPR) durante a execução do processo. O recurso Links de parceiro dinâmicos permite que você atribua dinamicamente uma referência de ponto final ao link de parceiro. Isso significa que você pode usar um link de parceiro para comunicação com vários serviços da Web, desde que esses serviços tenham a mesma interface.

Cada link de parceiro possui informações abstratas e informações concretas definidas. Enquanto as informações abstratas que descrevem a interface do serviço Web devam ser estáticas, as informações de acesso concretas tais como endereço e porta podem ser descobertos e usados dinamicamente.

Observação: Para o deployment bem-sucedido do processo, um link de parceiro deve ser completamente definido. Isso significa que quando você implanta o serviço, o arquivo WSDL do link de parceiro deve conter as informações abstratas e concretas do link de parceiro definido, incluindo o endereço e a porta, embora mais tarde as informações concretas possam ser alteradas, independentemente do arquivo WSDL.

Observação: A especificação BPEL manda que somente a EPR do parceiro possa ser alterada dinamicamente. Em termos de BPEL, somente o partnerRole de um elemento partnerLink pode ter um novo valor atribuído. O valor myRole não se altera depois que o BPEL é implantado.

Para atribuir uma nova EPR a um link de parceiro, você pode usar a atividade Atribuir padrão e o mapeador BPEL.

As informações EPR podem ser fornecidas de formas diferentes:

  • você pode fornecê-las como uma literal (digite as informações de referência do ponto final manualmente em uma literal) e mapeá-las para o link de parceiro
  • use uma mensagem de entrada para extrair o endereço do ponto final
  • use uma variável do tipo Referência de serviço
  • copie a EPR de um link de parceiro para outro

Se você usa uma mensagem de entrada, um esquema de EPR deve ser definido como uma parte da mensagem no WSDL. Para atribuir a EPR a um link de parceiro, use a variável de mensagem.

Para atribuir uma nova referência de ponto final a um link de parceiro a partir de uma variável:

  1. Crie uma nova atividade Atribuir no processo.
  2. Abra o mapeador BPEL
  3. Na árvore de destino à direita, localize o link de parceiro para o qual você deseja fornecer uma nova parte concreta.
  4. Na árvore de origem, localize uma variável que contém o novo endereço do ponto final

    O endereço do serviço Web pode ser definido em termos de esquemas diferentes, e o contêiner JBI requer um tipo de dados especial chamado ServiceRefType que é um empacotador simples para qualquer tipo de dados que descreve o ponto final.

    Para empacotar seus dados:

    • Na barra de ferramentas do mapeador, escolha BPEL > Empacotar com referência de serviço.
      Essa é uma função doXslTranform que usa uma folha de estilos XSL predefinida.

      Escolha BPEL> Empacotar com referência de serviço

  5. Arraste uma conexão de entrada para a função da sua variável. Em seguida, arraste uma conexão de saída para o link de parceiro.
  6. Uma nova parte concreta é atribuída ao link de parceiro.

    A nova EPR é atribuída ao link de parceiro

Observação: O tempo de execução suporta somente os esquemas incluídos na especificação WS-BPEL 2.0. O esquema de endereçamento WS não está incluído na especificação BPEL e, conseqüentemente, ele não é aceito pelo tempo de execução BPEL. Quando o esquema de endereçamento WS é usado pela primeira vez, ele é copiado do catálogo global do NetBeans para a raiz do código-fonte do projeto do módulo e depois disso o projeto se refere à cópia local do esquema. O esquema adressing.xsd também aparece entre os arquivos do processo do módulo na janela Projetos.

Usando o elemento Atribuir

A atividade Atribuir atribui valores a variáveis ou links de parceiro. Use o elemento Atribuir para copiar dados dos elementos, construir e calcular os valores das expressões, e armazenar novos dados em variáveis. Expressões são necessárias para realizar cálculos simples ou operar seleções de mensagens, propriedades e constantes literais para produzir novos valores. A atividade Atribuir pode conter uma ou mais atribuições elementares.

Uso

Use o mapeador BPEL para definir as regras de cópia da atividade Atribuir ou para adicionar expressões. Para obter mais informações, consulte a seção Cenário da atividade Atribuir do guia.

A visualização Mapeador BPEL está disponível como uma aba no editor BPEL.

A aba Mapeador BPEL

Você também pode abrir o mapeador, clicando duas vezes em uma atividade Atribuir no diagrama ou pressionando Ctrl-Shift-F9.

Propriedades do elemento Atribuir

A janela Propriedades do elemento Atribuir, chamada quando você clica com o botão direito do mouse no elemento e escolhe Propriedades, contém duas propriedades:

  • Nome. Este é o nome do elemento
  • Contagem de atribuições. Este é o número de regras de atribuição especificadas para o elemento.

    Janela Propriedades de Atribuir

Usando o elemento Vazio

O elemento Vazio não tem operação associada a ele. É usado geralmente como um espaço reservado em um processo, para interceptar e eliminar falhas, ou para ajudar a sincronizar as ações em uma atividade de fluxo que estão sendo executadas no momento.

O elemento Vazio pode ser usado quando outra pessoa estiver implementando um processo comercial, ou quando as atividades em uma atividade de fluxo precisam ser sincronizadas.

Uso

Arraste o elemento Vazio da Paleta para o diagrama.

Usando o elemento Aguardar

Use um elemento Aguardar para especificar uma condição de espera com base em uma unidade de tempo ou em uma duração.

Uso

Arraste o elemento Aguardar da Paleta para o diagrama. Como outros elementos, ele deve ser colocado na posição correta no fluxo do processo; caso contrário, você não verá o elemento no diagrama.

Clique com o botão direito do mouse no elemento do diagrama e escolha Propriedades para chamar uma janela Propriedades. Usando a janela Propriedades, você pode especificar:

  • O nome do elemento.
  • O tipo de alarme. As opções disponíveis são:
    • Por – especifica a duração da espera do processo
    • Até – especifica a hora até a qual o processo é atrasado.
  • Para/Até. Clicar no botão de reticências (...) chama uma caixa de diálogo em que você pode especificar o tempo de acordo com o tipo de expiração selecionada.Janela Propriedades de Aguardar

Usando o elemento Lançar

Use esta atividade para sinalizar uma falha interna.

Uso

Ao definir as propriedades deste elemento, você pode especificar um nome de falha e uma variável de falha. Esses detalhes podem ser passados para um manipulador de falhas que esteja configurado para lidar com esse tipo de exceção.

Propriedades do elemento Lançar

As propriedades do elemento Lançar podem ser configuradas por meio da janela Propriedades, chamada quando você clica com o botão direito do mouse no elemento e escolhe Propriedades. As opções são:

  • Nome
  • Nome da falha. Clicar no botão de reticências (...) chama a caixa de diálogo Nome da falha, na qual você pode escolher a falha na lista que inclui falhas definidas nos arquivos WSDL.

    Você pode usar o editor WSDL para adicionar definições padrão ao arquivo WSDL. Para obter mais informações, consulte a seção Configurando tipos de porta usando a visualização WSDL do Guia do desenvolvedor para editor WSDL.

  • Variável de falha. Clique no botão de reticências (...) para especificar o nome da variável, já declarada no arquivo BPEL, que conterá a mensagem de falha.

    Janela Propriedades de Lançar

Usando o elemento Relançar

A atividade Relançar só pode ser usada dentro de um manipulador de falhas. A atividade Relançar é usada para relançar a falha interceptada pelo manipulador de falhas. Antes de adicionar o elemento Relançar ao processo BPEL, você deve adicionar um elemento Manipulador de falhas ao elemento Processo ou Escopo e adicionar um elemento Interceptar ou Interceptar todos ao contêiner Manipulador de falhas.

Uso

  • Se você não adicionou um contêiner Manipulador de falhas ao diagrama, na visualização Design, clique com o botão direito do mouse no elemento Escopo ou Processo e escolha Adicionar > Adicionar manipuladores de falhas.
  • Clique com o botão direito do mouse no contêiner Manipulador de falhas e escolha Adicionar > Adicionar interceptar ou Adicionar > Interceptar todos.
  • Arraste o elemento Relançar da Paleta para o diagrama, e coloque-o dentro do elemento Interceptar ou Interceptar todos do contêiner Manipulador de falhas.

Não há propriedades a serem definidas para o elemento Relançar, já que ele relança a falha interceptada pelo manipulador de falhas.

Usando o elemento Sair

Use essa atividade a fim de parar a execução de uma atividade ou de um processo: dentro do processo, de uma atividade estruturada ou de um manipulador.

Uso

Na visualização Design, arraste o elemento Sair da Paleta para o diagrama.

Observação: o tempo de execução BPEL não suporta Sair dentro de elementos Fluxo e On Alarm, ou dentro do On Event filho do elemento Manipulador de eventos.

Usando o elemento Compensar

A atividade Compensar só pode ser usada nos elementos Interceptar, Interceptar todos, Manipulador de compensação ou Manipulador de conclusão.

A atividade Compensar causa a compensação de todos os escopos imediatamente incluídos no escopo que contém o manipulador de falhas, o manipulador de compensação ou o manipulador de conclusão com a atividade Compensar.

Uso

Na Paleta, arraste a atividade Compensar e coloque-a dentro do elemento Interceptar, Interceptar todos, Manipulador de compensação ou Manipulador de conclusão no diagrama. A atividade Compensar não requer configuração de propriedade, seu comportamento é predefinido.

Usando o elemento Compensar escopo

A atividade Compensar só pode ser usada nos elementos Interceptar, Interceptar todos, Manipulador de compensação ou Manipulador de conclusão.

A atividade Compensar escopo permite a compensação de um elemento Escopo ou Chamar especificado dentro do escopo que contém o manipulador com a atividade Compensar escopo, chamando o manipulador de compensação do elemento Escopo ou Chamar.

Uso

  • Na Paleta, arraste a atividade Compensar escopo e coloque-a dentro do elemento Interceptar, Interceptar todos, Manipulador de compensação ou Manipulador de conclusão no diagrama.
  • Clique com o botão direito do mouse no elemento Compensar escopo e escolha Propriedades.
  • Na caixa de diálogo Propriedades, configure o seguinte:
    • Nome. Insira um nome arbitrário.
    • Destino. Na lista suspensa, selecione um escopo ou uma atividade Chamar a ser compensada.
    • Documentação. Opcionalmente, escreva um comentário na atividade.

Usando o elemento If

A atividade If aceita o comportamento condicional de uma instância do processo comercial. A atividade If consiste em ramificações condicionais definidas pelos elementos If e Else If, seguidos por uma ramificação Else opcional. As condições em ramificações If e Else If são avaliadas na ordem em que aparecem. Durante a execução, a primeira ramificação cuja condição é verdadeira é obtida e oferece a atividade especificada para a atividade If. Em outras palavras, se houver algumas ramificações Else If cujas condições são verdadeiras, somente a primeira delas será executada.

Se nenhuma das ramificações for verdadeira, o caminho Else será escolhido. Se a ramificação Else não for especificada explicitamente, essa ramificação será considerada como uma atividade Vazio. A atividade If estará concluída quando a atividade da ramificação selecionada estiver concluída.

Uso

  1. Na visualização Design, arraste o elemento If da Paleta para o diagrama.
  2. Selecione o elemento If no diagrama. A janela Mapeador BPEL é exibida na parte inferior do IDE. Se a janela Mapeador BPEL não aparecer, clique com o botão direito do mouse no elemento If e selecione Mostrar mapeador BPEL.
  3. Especifique a condição do elemento If usando o mapeador BPEL. Para obter mais informações, consulte a seção Cenário da atividade If do guia. Você também pode especificar a condição manualmente na janela Propriedades, chamada quando você clica com o botão direito do mouse no elemento e escolhe Propriedades.
  4. (Opcional) Na janela Propriedades, insira o nome do elemento If.

    Janela Propriedades de If

  5. Adicione o elemento que será executado se a condição for verdadeira no elemento If. Configure o elemento aninhado. Se você adicionar outro elemento no elemento If, os elementos aninhados serão automaticamente empacotados no elemento Seqüência.
  6. Adicione outras ramificações (Else If e Else), conforme descrito abaixo.

Adicionando uma ramificação Else If ao elemento If

  1. Clique com o botão direito do mouse no elemento If e escolha Adicionar Else If.
  2. Adicione uma atividade ao Else If que será executada se a condição definida para esse elemento Else If for verdadeira. Use o mapeador BPEL para definir uma condição.
  3. (Opcional) Adicione mais atividades Else If, escolhendo Adicionar Else If e adicione atividades nelas.

Adicionando uma ramificação Else ao elemento If

Arraste a atividade que você deseja executar na ramificação Else para o caminho do conector marcado com uma barra. Configure a atividade aninhada.

Reordenando as ramificações Else If

Na visualização Design, arraste a ramificação Else If que você deseja reordenar e solte-a no espaço reservado que aparece ao lado da outra ramificação Else If.

Usando o elemento While

Use o elemento While para executar repetidamente uma ou mais ações enquanto as condições específicas existirem no início de cada iteração. Este elemento contém outros elementos que são repetidos enquanto os critérios de sucesso especificados forem atendidos. Se a condição que você especificar for falsa, nenhuma das atividades listadas será executada.

Observação: o elemento While primeiro verifica a validade da condição e, em seguida, executa a atividade interativa. Inversamente, o elemento Usando o elemento Repetir até primeiro executa a atividade e, em seguida, verifica a validade da condição.

Uso

  1. Na visualização Design, arraste o elemento While da Paleta para o diagrama.
  2. Arraste uma atividade que será executada repetidamente e coloque-a dentro do elemento While. Se necessário, configure as propriedades da atividade.
  3. Use a janela Propriedades para especificar o nome e a condição do elemento While. Você pode inserir a condição manualmente ou usar o mapeador BPEL para gerar a condição para você. Para abrir a janela Mapeador BPEL, escolha Janela > Mapeador BPEL ou clique com o botão direito do mouse no elemento While no diagrama e escolha Mostrar mapeador BPEL.

Usando o elemento Repetir até

Use o elemento Repetir até para executar repetidamente uma ou mais atividades, enquanto condições específicas existirem após a execução de cada iteração. Este elemento contém outros elementos que são repetidos até que os critérios de sucesso especificados sejam atendidos. Se a condição que você especificar for verdadeira, as atividades listadas serão executadas uma vez.

Observação: o elemento Repetir até primeiro executa a atividade iterativa e, em seguida, verifica a validade da condição. Inversamente, o elemento While primeiro verifica a validade da condição e, em seguida, executa a atividade.

Uso

  1. Na visualização Design, arraste o elemento Repetir até da Paleta para o diagrama.
  2. Arraste as atividades que serão executadas repetidamente e coloque-as dentro do elemento Repetir até. Se necessário, configure as propriedades da atividade.
  3. Use a janela Propriedades para especificar o nome e a condição do elemento Repetir até. Você pode inserir a condição manualmente ou usar o mapeador BPEL para gerar a condição para você. Para abrir a janela Mapeador BPEL, escolha Janela > Outro > Mapeador BPEL ou clique com o botão direito do mouse no elemento Repetir até no diagrama e escolha Mostrar mapeador BPEL.

Usando o elemento Para cada

Use o elemento Para cada a fim de executar repetidamente sua atividade Escopo exatamente N+1 vezes, onde N é igual ao Valor final do contador menos o Valor inicial do contador.

Uso

  1. Na visualização Design, arraste o elemento Para cada da Paleta para o diagrama.
  2. Adicione elementos que serão executados repetidamente da Paleta para o elemento Para cada. Os elementos que você adiciona são empacotados automaticamente no elemento Escopo.
  3. Clique com o botão direito do mouse no elemento Para cada e escolha Propriedades para abrir a janela Propriedades.

A janela Propriedades do elemento Para cada inclui as propriedades listadas abaixo.

  • Nome. Especifique o nome do elemento Para cada.
  • Nome da variável do contador. Declara o nome da variável do contador.
  • Valor inicial do contador. Define o valor inicial do contador. Use o mapeador BPEL para gerar uma expressão de valor inteiro.
  • Valor final do contador. Define o valor final do contador. Use o mapeador BPEL para gerar uma expressão de valor inteiro.

    Quando a atividade Para cada se inicia, as expressões no Valor inicial do contador e no Valor final do contador são avaliadas pela primeira e única vez. Ou seja, quando os dois valores são retornados, eles permanecem constantes durante o ciclo de vida da atividade. Se o Valor inicial do contador for maior que o Valor final do contador, nenhuma iteração será realizada.

  • Condição de conclusão (Opcional). Especifica uma expressão de valor inteiro. Depois da execução de cada atividade diretamente incluída, o número de atividades concluídas é comparado com esse valor. Quando o número de atividades concluídas é igual ao valor da expressão especificada, nenhuma outra atividade é iniciada. Quando o valor da expressão é maior que o número de iterações disponíveis, nenhuma iteração é iniciada.
  • Contar somente ramificações completas (Opcional). Se essa caixa de verificação estiver marcada, o tempo de execução contará somente as ramificações que foram concluídas com êxito. Se essa caixa de verificação for limpa, todas as ramificações, concluídas com êxito ou não, serão contadas.

Usando o elemento Selecionar

O elemento Selecionar bloqueia o processo e aguarda até que um dos eventos especificados ocorra. Depois que o evento específico ocorre, a atividade associada a esse evento é realizada. Os possíveis eventos são a chegada de uma mensagem ou um alarme baseado em temporizador. A ocorrência dos eventos é mutuamente exclusiva. Se mais de um evento ocorrer, então, a seleção da atividade a ser realizada dependerá de qual evento ocorreu primeiro.

A atividade Selecionar fornece duas ramificações, On Message e On Alarm. A ramificação cuja condição é satisfeita primeiro (ou seja, uma mensagem é recebida ou o temporizador especificado expira) é executada. Quando você adiciona um elemento Selecionar ao diagrama, ele automaticamente inclui uma instrução On Message na qual você pode especificar as propriedades da mensagem que o processo aguarda do serviço de parceiro. Cada elemento Selecionar deve incluir pelo menos uma instrução On Message. A ramificação On Alarm contém um temporizador que você pode usar para especificar quanto tempo o processo deve aguardar.

Uso

  1. Na visualização Design, arraste o elemento Selecionar da Paleta para o diagrama.
  2. Para a ramificação On Message, configure as propriedades da mensagem pela qual o processo está aguardando. A configuração é semelhante àquela do elemento Utilização.
  3. Na Paleta, arraste a atividade que será executada e coloque-a dentro da ramificação On Message. Configure as propriedades da atividade.
  4. (Opcional) Adicione mais ramificações On Message, escolhendo Adicionar > On Message no menu pop-up e configure-as, conforme descrito acima.
  5. (Opcional) Adicione uma ou mais ramificações On Alarm seguindo o procedimento abaixo.
  6. Elemento Selecionar

Adicionando uma ramificação On Alarm

  1. Clique com o botão direito do mouse no elemento Selecionar e escolha Adicionar > On Alarm no menu pop-up.
  2. Configure o temporizador através da janela Propriedades, chamada quando você clica com o botão direito do mouse no elemento e escolhe Propriedades. As opções disponíveis são:
    • Tipo de alarme – usado para escolher o tipo de alarme. O tipo pode ser um dos seguintes:
      • Por – especifica a duração da espera do processo.
      • Até – especifica o prazo do processo.
    • Por/Até – usado para configurar o prazo ou a duração do tipo de alarme escolhido. Clique no botão de reticências (...) para especificar a hora. Você também pode usar o mapeador BPEL.
  3. Localize a atividade que você deseja executar depois que o tempo expirar e arraste-a da Paleta para o espaço reservado dentro do elemento on Alarm.
  4. (Opcional) Adicione uma ou mais ramificações On Alarm, conforme descrito acima.

Propriedades do elemento Selecionar

A janela Propriedades do elemento Selecionar, chamada quando você clica com o botão direito do mouse no elemento e escolhe Propriedades, inclui os seguintes campos:

  • Criar instância. Se definido como sim, uma nova instância do processo será criada quando o evento especificado ocorrer. Se você não planeja iniciar uma nova instância do processo, mantenha o valor padrão N/D.
  • Nome. É usado para especificar o nome do elemento.

Janela Propriedades de Selecionar

Usando o elemento Fluxo

Use o elemento Fluxo para definir um conjunto de atividades que serão executadas simultaneamente (em paralelo).

A atividade Fluxo é uma atividade estruturada, que contém outras atividades separadas em caminhos de controle ou ramificações individuais. Você pode incorporar quantos caminhos desejar na atividade, e eles serão todos executados simultaneamente.

Durante a execução, cada caminho é executado simultaneamente, e as atividades em cada um deles são executadas na ordem em que aparecem, a menos que elas sejam a origem de um link. Quando as atividades são a origem de um link, a condição do link e a condição de junção da atividade devem ser avaliadas. Se as condições do link que levam a uma atividade entrarem em conflito com as de sua respectiva condição de junção, será lançada uma falha nessa atividade.

Uso

Na visualização Design, arraste o elemento Fluxo da Paleta para o diagrama.

Arraste um elemento para o espaço reservado dentro do elemento Fluxo. Se você adicionar outro elemento à mesma ramificação do elemento Fluxo, os elementos em uma ramificação serão automaticamente empacotados no elemento Seqüência.

Adicionando ramificações ao elemento Fluxo

Você pode adicionar uma ou mais ramificações ao elemento Fluxo. O elemento Fluxo possui um estilo de interação de usuário especial. Ele sempre mostra um espaço reservado para a próxima ramificação que talvez você queira adicionar. Para adicionar uma nova ramificação, arraste um elemento da Paleta para o espaço reservado da "próxima ramificação" imediatamente disponível.

Alterando a ordem dos elementos dentro do fluxo

Para alterar o ordem das atividades dentro do elemento Fluxo:

  1. Na visualização Design, clique com o botão direito do mouse no elemento Fluxo e selecione Alterar ordem.
  2. Selecione um elemento e use os botões Mover para cima ou Mover para baixo a fim de alterar a posição do elemento dentro do contêiner.

Usando o elemento Seqüência

Use o elemento Seqüência para aninhar uma série de atividades em seu processo. As atividades em uma seqüência serão executadas em uma ordem seqüencial restrita. A execução do processo retorna ao processo comercial quando a última atividade no ninho tiver sido concluída.

Uso

Arraste o elemento Seqüência da Paleta para o diagrama.

Adicionando atividades filho à Seqüência

Você pode adicionar uma ou mais atividades filhas à Seqüência. O elemento Seqüência possui um estilo de interação de usuário especial. Ele sempre mostra um ou mais espaços reservados válidos para a próxima atividade que você queira adicionar. Para adicionar uma nova atividade filha, arraste e solte um elemento da Paleta para o espaço reservado de atividade imediatamente próximo ou anterior.

Alterando a ordem dos elementos dentro da seqüência

Para alterar a ordem das atividades dentro do elemento Seqüência:

  1. Na visualização Design, clique com o botão direito do mouse no elemento Seqüência e selecione Alterar ordem.
  2. Selecione um elemento e use os botões Mover para cima ou Mover para baixo a fim de alterar a posição do elemento dentro do contêiner.

Usando o elemento Escopo

A atividade Escopo é essencialmente um conjunto de atividades filhas que possuem suas próprias variáveis, manipuladores de falhas, manipuladores de eventos e conjuntos de correlações. A atividade Escopo fornece o contexto do comportamento dos elementos filhos. Os atributos definidos para um Escopo pai possuem visibilidade local dentro desse Escopo. Por exemplo, as variáveis declaradas para um Escopo ficam visíveis somente dentro desse Escopo e em todos os Escopos aninhados. Essas variáveis podem ser usadas para as atividades filhas desse Escopo.

Uso

  1. Na visualização Design, arraste o elemento Escopo da Paleta para o diagrama.
  2. Clique com o botão direito do mouse no elemento e escolha Adicionar no menu pop-up para adicionar o seguinte:
  3. Na visualização Design, arraste elementos da Paleta e coloque-as dentro do elemento Escopo.
  4. Configure os elementos.
  5. (Opcional) Especifique o nome do elemento Escopo na janela Propriedades, chamada quando você clica com o botão direito do mouse e escolhe Propriedades.

Variáveis

As variáveis na programação BPEL funcionam da mesma forma que em outras linguagens de programação: elas mantêm valores temporários, formam partes de expressões ou são passadas para parceiros externos. Normalmente, você precisa de uma variável para cada mensagem enviada ou recebida de um serviço de parceiro. O BPEL Designer aceita os seguintes tipos de variáveis:

  • Tipo de mensagem WSDL. Essas variáveis correspondem aos tipos de mensagem do serviço Web definidos em arquivos WSDL importados pelo processo. Em um arquivo BPEL (.bpel), essas variáveis devem especificar um valor para o atributo messageType. As variáveis do tipo de mensagem são usadas para manter os dados em interações entre o processo e seus serviços de parceiro.
  • Tipo de esquema XML. Essas variáveis correspondem aos tipos de dados simples ou complexos do esquema XML. Os próprios tipos de esquema XML são definidos nos arquivos do esquema XML (.xsd) ou nos arquivos WSDL que são importados para o processo. Em um arquivo BPEL, as variáveis deste tipo devem especificar um valor para o atributo type.
  • Elemento do esquema XML. Essas variáveis correspondem aos elementos do esquema XML. Os próprios elementos do esquema XML são definidos nos arquivos do esquema XML (.xsd) ou nos arquivos WSDL que são importados no processo. Em um arquivo BPEL, as variáveis deste tipo devem especificar um valor para o atributo element.
  • Tipos incorporados. As variáveis desse tipo são tipos simples padrão definidos na especificação do esquema XML.

Variáveis globais e locais

As variáveis definidas na raiz Processo são variáveis globais, que possuem uma visibilidade global em todo o processo. As variáveis definidas em um escopo específico são visíveis somente dentro desse escopo e em todos os escopos aninhados. Essas variáveis são chamadas de variáveis locais. Uma variável definida para um elemento escopo interno pode ocultar uma variável superior definida do mesmo nome.

O nome de uma variável deve ser exclusivo entre os nomes de todas as variáveis definidas nesse mesmo escopo.

Para definir uma variável:

  1. Clique com o botão direito do mouse no elemento Processo ou Escopo e selecione Adicionar > Variável.
  2. Na caixa de diálogo Criar nova variável, nomeie a variável. O nome deve ser exclusivo dentro do elemento Escopo.
  3. Expanda nó correspondente ao tipo da nova variável e selecione seu tipo. Você tem as seguintes opções:
    • Tipos incorporados. Expanda o nó Tipos incorporados, selecione o nome do tipo e clique em OK.
    • Tipo de mensagem. Expanda o nó de um arquivo .wsdl, selecione um tipo de mensagem e clique em OK.
    • Esquema XML. Expanda o nó de um arquivo .xsd ou um arquivo .wsdl que contenha um esquema incorporado. Expanda os nós Tipo complexo global, Tipo simples global ou Elementos simples globais, selecione o tipo apropriado e clique em OK.

      Para a sua conveniência, os tipos globais de variáveis são exibidos em negrito.

  4. (Opcional) Desmarque a caixa de verificação Mostrar apenas arquivos importados para exibir o conteúdo dos arquivos WSDL não importados e os arquivos do esquema XML.
  5. Clique em OK.

    Por padrão, a caixa de diálogo Criar nova variável mostra apenas os arquivos que já foram referenciados no processo. Entretanto, o projeto pode conter outros arquivos WSDL e XSD que ainda não foram importados para o processo. Se você selecionar um tipo para a nova variável que esteja definido em um arquivo não-importado, o IDE adicionará automaticamente a importação necessária para o processo BPEL.

    Você também pode adicionar variáveis na janela Navegador. Para adicionar uma variável, selecione a visualização Lógica BPEL no navegador, expanda o nó do projeto do módulo BPEL, clique com o botão direito do mouse no nó Variáveis e escolha Adicionar variável.

Para editar uma variável:

  1. Na janela Navegador, selecione a visualização Lógica BPEL.
  2. Expanda o nó do projeto do módulo BPEL > Variáveis e clique duas vezes na variável que você deseja editar.
  3. Na caixa de diálogo Editor de propriedades da variável, altere o tipo e o nome da variável.
  4. Clique em OK.

início


Companion
Projects:
MySQL Database Server   GlassFish Community: an Open Source Application Server   Open Solaris  Open JDK: an Open SourceJDK   Mobile & Embedded Community     Sponsored by 
Sponsored by Sun Microsystems