exceções do sistema

7

Click here to load reader

Upload: guilherme-baccas

Post on 23-Jan-2018

86 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: Exceções do sistema

Exceções do sistema

Mule invoca uma System Exception Strategy quando uma exceção é lançada no nível de sistema (ou seja, quando nenhuma mensagem está envolvida, exceções são tratadas por estratégias de exceção do sistema). Por exemplo, as estratégias de exceção sistema de lidar com exceções que ocorrem:

Durante a inicialização do aplicativo

Quando uma conexão para um sistema externo falhar

Quando uma estratégia exceção do sistema ocorre, Mule envia uma notificação de exceção a ouvintes registrados, registra a exceção, e - se a exceção foi causada por uma falha de conexão - reconnection strategy. Estratégias exceção do sistema não são configuráveis no Mule.

Exemplo de cenário

Mulo estabelece uma ligação a um corretor JMS, a fim de receber uma mensagem. Quando mula tenta usar a conexão para consumir uma mensagem de falha na conexão, que faz com que Mule para invocar a estratégia exceção do sistema. Porque a falha ocorreu antes de qualquer mensagem foi recebida para processamento, Mule invocou o sistema, ao invés de mensagens, a estratégia de exceção.

Page 2: Exceções do sistema

Exceções de mensagens

Mule invoca uma System Exception Strategy sempre que uma

exceção é lançada dentro de um fluxo (isto é, sempre que uma mensagem está envolvida, as exceções são tratadas por mensagens estratégias de exceção).

Quando uma mensagem que está sendo processada através de um fluxo de mula lança uma exceção, para a execução fluxo normal e processa transferências para a sequência de processador de mensagens dentro da estratégia exceção. Você pode incorporar qualquer número de processadores de mensagens - e em um caso, outras estratégias de exceção - em uma estratégia de exceção para lidar com a exceção precisamente como você deseja. O diagrama abaixo ilustra o que acontece quando uma mensagem gera uma exceção.

Page 3: Exceções do sistema

Sobre as estratégias de exceção de mensagens

Mule suporta cinco tipos de estratégias de exceção de mensagens, cada um dos quais é capaz de erros de manipulação que ocorrem em fluxos que as transações de processo:

Estratégia de exceção

Usar Tratamento de erros Transação

Default Exception Strategy

Definido e aplicado implicitamente por padrão para lidar com todas as exceções de mensagens que são jogados em aplicações de mule

Quando uma mensagem lança uma exceção, a estratégia de exceção padrão reverte a mensagem e registra a exceção.

Catch exception strategy

Definir uma estratégia de exceção catch para personalizar a forma como mule lida com qualquer exceção.estratégias de exceção captura consumir mensagens de entrada.

Quando uma mensagem lança uma exceção, a estratégia de exceção captura sempre confirma a transação e consome a mensagem.

Rollback exception strategy

Definir uma estratégia exceção de reversão para garantir que uma mensagem que lança uma exceção em um fluxo é

Quando uma mensagem lança uma exceção, a estratégia exceção de reversão faz uma ou mais tentativas de reverter a mensagem e entregar novamente para

Page 4: Exceções do sistema

Estratégia de exceção

Usar Tratamento de erros Transação

revertida para reprocessamento (se a origem da mensagem apoia devolução). Estratégias de exceção de reversão não consomem as mensagens de entrada.

processamento (se a origem da mensagem apoia devolução). Se a mensagem exceder suas tentativas reentrega, então a estratégia exceção reversão confirma a transação falhou e consome a mensagem.

Reference exception strategy

Definir uma estratégia exceção de referência para se referir e siga os parâmetros de tratamento de erros definidos numa estratégia global captura, reversão ou exceção escolha.

Quando uma mensagem lança uma exceção, a estratégia exceção de referência refere-se e adere aos parâmetros de tratamento de erros definidos em uma estratégia de captura global, reversão ou exceção escolha. (A própria estratégia exceção de referência nunca realmente executa qualquer rollback, commit, ou consumir atividades.)

Choice exception strategy

Definir uma estratégia exceção escolha para personalizar a forma como mule lida com uma mensagem que lança uma exceção com base no conteúdo da mensagem no momento em que lança a exceção.

Quando uma mensagem lança uma exceção, a estratégia exceção escolha faz uma decisão sobre para onde encaminhar a mensagem para posterior processamento. (A própria estratégia exceção escolha nunca realmente executa qualquer rollback,

Page 5: Exceções do sistema

Estratégia de exceção

Usar Tratamento de erros Transação

commit, ou consumir atividades.)

Características de estratégias de exceção de mensagens:

Cada fluxo pode conter apenas uma estratégia de exceção.

Cada estratégia exceção pode conter qualquer número de

processadores de mensagens.

Estratégias de exceção escolha pode conter um ou mais das

capturas e / ou estratégias de exceção de reversão. (Estratégias de

reversão e de exceção captura não pode, no entanto, conter outras

estratégias de exceção.)

Outras Caminhos de Tratamento de erros Until Successful Scope Until Successful se comporta de forma semelhante a uma estratégia exceção reversão.Este escopo tenta rotear uma mensagem através do seu fluxo de criança até que a mensagem é processada com êxito. No entanto, você pode definir o número máximo de processamento tenta o Até âmbito de sucesso compromete-se antes que reverte para processar a mensagem como se fosse uma exceção. Você pode configurar um Failure Expression, uma Ack Expression ou uma Dead Letter Queue Reference para instruir o escopo sobre como gerenciar mensagens que não pode processo. A este respeito, até comportamento âmbito de sucesso é semelhante a uma estratégia de exceção de reversão.

Page 6: Exceções do sistema

Exception Filter

Filtro de exceção do Mulo para a execução fluxo normal quando se descobre uma mensagem que contém uma mensagem no exceptionPayload campo. Em comparação, uma estratégia de exceção normalmente interrompe a execução fluxo normal quando uma mensagem gera uma exceção no fluxo. Você pode combinar os dois e configurar o filtro de exceção para interromper a execução fluxo normal e lançar uma exceção, o que desencadeia a estratégia exceção.

Estratégias de reconexão

Mule Estratégias reconexão especificar como um conector se comporta quando a sua conexão falhar. Você pode controlar como Mule tenta se reconectar, especificando um número de critérios: o tipo de exceção, o número ea frequência de tentativas de reconexão, as notificações geradas e muito mais. Com uma estratégia de reconexão, você pode controlar melhor o comportamento de uma falha na conexão, configurando-o, por exemplo, tentar novamente a ligação apenas uma vez a cada 15 minutos, e parar de tentar novamente após 10 tentativas. Comportamento estratégia de reconexão se assemelha ao de estratégias de exceção, mas as estratégias de reconexão fornecer instruções especificamente para - e limitado a - reconexão tentativas. Consulte a documentação de estratégias de reconexão para mais detalhes.

Page 7: Exceções do sistema

Tratamento de erros CXF

Serviços Web que utilizam CXF podem implementar estratégias de exceção Mule (tais como as estratégias de exceção de reversão captura e) que são compatíveis com CXF.