Leia os tópicos de conceitos sobre nós do fluxo de mensagens e Domínio e Analisador MRM.
O intermediário fornece validação com base nos dicionários de mensagens para mensagens predefinidas. A validação, portanto, se aplica apenas às mensagens que você modelou e definiu para o domínio MRM.
O intermediário não fornece nenhuma validação para mensagens de autodefinição. Não é possível validar mensagens diretamente em um Esquema XML DTD ou XML. Em vez disso, você deve criar o modelo equivalente no domínio MRM, importando seu Esquema XML DTD ou XML utilizando o Message Brokers Toolkit
Os fluxos de mensagens são projetados para transformar e rotear mensagens que estão de acordo com determinadas regras. Por padrão, o analisador MRM desempenha alguma verificação de validação em uma mensagem, mas apenas para assegurar a integridade da operação de análise. No entanto, também é possível validar uma mensagem rigorosamente no modelo de mensagens contido no dicionário de mensagens, especificando opções de validação em determinados nós no fluxo de mensagens.
Você pode utilizar opções de validação para validar as seguintes mensagens:
Essas opções de validação podem garantir a validade de dados que estão entrando e saindo do fluxo de mensagens. As opções fornecem algum grau de controle sobre a validação executada para:
Também é possível especificar qual ação executar quando a validação falhar.
A validação de mensagens envolve a navegação por uma árvore de mensagens e a verificação de sua validade. É uma extensão da criação da árvore quando a mensagem é analisada e uma extensão da criação do fluxo de bits quando a mensagem de saída é gravada.
As opções de validação estão disponíveis nos seguintes nós:
Tipo de Nó | Nós com opções de validação |
---|---|
Nó Input | MQInput, SCADAInput, HTTPInput, JMSInput, TimeoutNotification |
Nó Output | MQOutput, MQReply, SCADAOutput, HTTPReply, JMSOutput |
Outros nós | Compute, Mapping, JavaCompute, Validate, ResetContentDescriptor, MQGet, HTTPRequest, |
As opções de validação também podem ser especificadas na instrução ESQL CREATE e na função ASBITSTREAM.
Para validar mensagens de entrada recebidas em um nó input, é possível especificar propriedades de validação no nó input. A mensagem de entrada é então validada conforme o fluxo de bits da mensagem é analisado para formar a árvore de mensagens.
Também é possível utilizar a propriedade Cronometragem de Análise do nó input para controlar se toda a mensagem deve ser analisada e validada neste momento ou se os arquivos individuais na mensagem serão analisados e validados apenas quando referidos.
Para validar mensagens de saída criadas por um nó Compute, um nó Mapping ou um nó JavaCompute, especifique propriedades de validação no próprio nó ou propriedades de validação no nó output que envia a mensagem. A validação ocorre quando o fluxo de bits da mensagem é criado a partir da árvore de mensagens pelo nó output.
Como alternativa, você pode utilizar um nó Validate para validar uma árvore de mensagens em um local específico em seu fluxo de mensagens ou pode utilizar a função ESQL ASBITSTREAM em um nó Compute, Filter ou Database.
No entanto, utilizando opções de validação, você pode solicitar uma validação de mensagens mais completa. Por exemplo, talvez você queira validar uma ou mais das seguintes condições e lançar uma exceção ou registrar os erros:
A amostra ilustra algumas dessas opções de validação.
Para obter informações adicionais sobre Cronometragem de Análise, consulte Propriedades de Validação para Mensagens no Domínio MRM.
Para obter informações sobre como controlar a validação utilizando propriedades diferentes, consulte Propriedades de Validação para Mensagens no Domínio MRM.