Rotear Falhas SOAP para uma Operação Ou E-mail¶
Introdução¶
Se sua integração chamar uma API SOAP com uma operação de serviço web, você também poderá configurar ações para serem acionadas em caso de falha de SOAP. Uma falha SOAP é um erro resultante de formato de mensagem incorreto, processamento de cabeçalho ou incompatibilidade.
Esta página mostra como configurar a falha SOAP para acionar outra operação ou enviar um e-mail, assim como operações com sucesso ou falha.
Configuração de Falha SOAP¶
-
Comece com uma operação de serviço da web existente baseada em SOAP. Para obter mais informações sobre como configurar operações de serviços da Web, consulte Serviços da Web. O exemplo a seguir chama um serviço web baseado em SOAP para conversão de moeda.
-
Clique com o botão direito no plano de fundo da operação do serviço da web e navegue até On SOAP Fault > Operation ou On SOAP Fault > E-mail. Escolha selecionar uma operação ou e-mail existente ou crie um novo. Siga as instruções para prosseguir. Neste exemplo, configuraremos um e-mail para enviar se houver uma falha no SOAP. Consulte Criar uma operação ou Criar uma mensagem E-mail para obter mais instruções.
-
A operação ou e-mail agora deve aparecer encadeado à operação do serviço web. A linha laranja e o ponto de exclamação indicam a condição On SOAP Fault. No exemplo, a cadeia completa é mostrada abaixo.
Nota
Se você tiver uma falha de SOAP, o ícone de ponto de exclamação laranja também será exibido onde quer que o status da operação seja monitorado (logs de operação, monitor de operação, atividades na nuvem, etc.).
Problema Conhecido e Solução Alternativa¶
Ao implantar uma operação contendo uma falha SOAP acionando um e-mail, alguns usuários relataram um erro semelhante ao abaixo:
The entire string 'b8d5b4l4-38d4-4fb0-8943-5p5e4b18b278' could not be converted to a long long using base 10. The invalid part of the string is 'b8d5b4l4-38d4-4fb0-8943-5p5e4b18b278'.
Se você receber um erro semelhante, como solução alternativa, você poderá configurar a falha SOAP para acionar uma operação que envia a mensagem e-mail. Para fazer isso, siga estas etapas:
-
Dentro da cadeia de operação, clique com o botão direito na mensagem e-mail e selecione Remover do Gráfico para remover o gatilho de falha SOAP atual da operação.
-
Crie uma nova operação usando o tipo Script.
-
Dentro do script, use o
SendEmailMessage()
função para enviar a mensagem e-mail, semelhante a esta:<trans> SendEmailMessage("<TAG>Email Messages/SOAP Fault Email</TAG>") </trans>
-
Clique com o botão direito no plano de fundo da operação do serviço da Web e navegue até On SOAP Fault > Operation. Em seguida, selecione a operação existente que você acabou de criar.
-
A operação agora deve aparecer encadeada à operação do serviço web. Usando o exemplo anterior nesta página, a cadeia aparece da seguinte forma: