As seções seguintes descrevem em sua ordem de aparição:
As circunstâncias em que você usaria um manipulador específico.
O uso desses elementos no contexto do BPEL Designer.
Nesta versão do BPEL Designer, você pode adicionar manipuladores de falhas e manipuladores de eventos ao seu processo BPEL. Observe que manipuladores de compensação e de término não são aceitos. Consulte o BPEL Service Engine User's Guide para obter detalhes sobre as construções e as limitações relacionadas suportadas da linguagem BPEL 2.0.
Usando um manipulador de falhas
Quando usar
A linguagem BPEL oferece a habilidade de interceptar e gerenciar exceções usando manipuladores de falhas. Por exemplo, as exceções ocorrem quando os serviços Web retornam dados diferentes do que era esperado. Se as falhas não forem manipuladas, todo o processo BPEL pode passar para um estado de falha. Portanto, para evitar que todo o processo falhe, você pode adicionar manipuladores de falhas para interceptar e gerenciar exceções em Escopos específicos.
Cada manipulador de falhas contém uma atividade que é executada em caso de erro. Por exemplo, um serviço de parceiro será notificado se tiver ocorrido um erro. Os manipuladores de falhas podem ser adicionados ao processo inteiro ou a elementos Escopo individuais.
Você pode anexar um contêiner Manipulador de falhas aos elementos Processo ou Escopo. Dentro do contêiner Manipuladores de falhas, você pode criar várias atividades Interceptar configuradas para interceptar tipos de falhas específicos, ou um elemento-manipulador Interceptar todos para interceptar todas as exceções não detectadas por manipuladores específicos.
Uso
Clique com o botão direito do mouse no elemento Escopo ou Processo e escolha Adicionar > Manipuladores de falhas.
Um elemento de contêiner vazio aparece.
Clique com o botão direito do mouse no contêiner Manipulador de falhas e escolha Adicionar > Interceptar ou Adicionar > Interceptar todos.
Você pode adicionar ao grupo Manipuladores de falhas quantos elementos Interceptar específicos desejar. Você pode adicionar somente um elemento Interceptar todos por contêiner Manipuladores de falhas.
Adicione uma atividade ao elemento Interceptar ou Interceptar todos que será executado em caso de uma falha.
Elemento Interceptar
Use esse elemento para interceptar e lidar com um tipo específico de falha.
Este elemento é usado em um elemento de contêiner Manipuladores de falhas apropriado.
Propriedades do elemento Interceptar
As propriedades do elemento Interceptar são definidas na janela Propriedades. Você também pode clicar com o botão direito do mouse no elemento do diagrama e escolher Propriedades. As propriedades disponíveis são:
Nome da falha. Selecione o qname da falha na lista de falhas, que inclui as falhas definidas nos arquivos WSDL.
Nome da variável de falha. Especifique o nome de uma variável BPEL existente que conterá a mensagem de falha.
Tipo de variável da falha. Especifique o tipo da variável.
Elemento Interceptar todos
Use o elemento Interceptar todos para interceptar e lidar com todas as falhas que não são interceptadas por um elemento de interceptação associado.
O elemento Interceptar todos é usado em uma janela do manipulador de falhas junto com um ou mais elementos de interceptação. É definido em um elemento de contêiner Manipuladores de falhas junto com um ou mais elementos de interceptação.
Não há propriedades para o elemento Interceptar todos. Seu comportamento é predefinido e não requer configuração de propriedade.
O processo BPEL inteiro, bem como cada escopo individual, pode ser associado a um conjunto de manipuladores de eventos que serão chamados simultaneamente, se o evento correspondente ocorrer. As ações feitas em um manipulador de eventos podem ser de qualquer tipo de atividade, tal como Seqüência ou Fluxo. O único filho imediato de um manipulador de eventos é Escopo, sendo assim, quando você arrasta um elemento da paleta para o manipulador de eventos, ele é empacotado automaticamente em Escopo.
Existem dois tipos de eventos:
As mensagens de entrada, que correspondem a uma operação de solicitação/resposta ou unidirecional no WSDL. Essas mensagens são especificadas por meio de elementos On Event.
Alarmes ou temporizadores, que chamam atividades após os períodos especificados ou quando um prazo é alcançado. As horas são especificadas por meio de elementos On Alarm.
Uso
Clique com o botão direito do mouse no elemento Processo ou em qualquer elemento Escopo e chame a ação Adicionar manipuladores de eventos. Isso não adiciona um manipulador de eventos em particular, apenas adiciona um elemento de contêiner ao qual você pode adicionar manipuladores de eventos específicos.
Depois de adicionar um contêiner Manipuladores de eventos, você pode clicar com o botão direito do mouse no elemento Manipuladores de eventos para adicionar uma ramificação On Event ou On Alarm. Você pode adicionar ao grupo Manipuladores de eventos quantos elementos On Event ou On Alarm específicos desejar.
Elemento On Event
O elemento On Event indica que o evento especificado está aguardando que uma mensagem chegue. A interpretação dessa marca e seus atributos é muito semelhante a uma atividade Receber.
Uso
Clique com o botão direito do mouse no contêiner Manipuladores de eventos e escolha Adicionar > On Event.
Quando você clica duas vezes no elemento On Event se abre um editor de propriedades, onde você pode especificar/alterar o seguinte:
O link de parceiro
A operação associada ao elemento On Event
A variável do evento
Quando você clica com o botão direito do mouse no elemento OnEvent e escolhe Propriedades se abre uma janela Propriedades, onde você pode consultar e modificar as propriedades do elemento. Além das propriedades presentes na caixa de diálogo Editor de propriedades, a janela Propriedades contém o campo Tipo de porta, que é preenchido quando você especifica o link de parceiro e a operação, e o campo Tipo, que é preenchido com o tipo da variável even especificada.
A aba Correlações na caixa de diálogo Editor de propriedades On Event permite que você exame ou especifique um conjunto de correlações.
O elemento OnAlarm especifica o prazo ou a duração do escopo aninhado.
Propriedades do elemento On Alarm
As propriedades do elemento On Alarm são definidas na janela Propriedades, chamada quando você clica com o botão direito do mouse no elemento do diagrama e escolhe Propriedades. As propriedades disponíveis são:
Tipo de alarme, que é a propriedade usada para escolher o tipo de alarme. As opções disponíveis são:
Para. Define o período de tempo que o processo deve aguardar.
Até. Especifica o prazo do processo.
Repetir a cada. Especifica a freqüência da iniciação do processo. Inicia o processo cada vez que o período de duração especificado expira. O relatório da primeira duração inicia quando o escopo associado se inicia.
Por + Repetir a cada. Especifica a freqüência da iniciação do processo após a duração de um tempo de espera especificado. O processo será iniciado cada vez que o período de duração especificado no campo Repetir a cada expirar. O primeiro alarme é disparado quando o período de tempo especificado no campo Por expira.
Até + Repetir a cada. Especifica a freqüência de iniciação do processo com base no prazo especificado. O processo será iniciado cada vez que o período de duração especificado no campo Repetir a cada expirar. O primeiro alarme é disparado quando o prazo especificado no campo Até é alcançado.
A segunda propriedade (e terceira, se disponível) é usada para especificar a duração ou o prazo do tipo de alarme selecionado.