Utilize o nó MQInput para receber mensagens de clientes que se conectam ao intermediário utilizando o WebSphere MQ Enterprise Transport, e que utilizam as interfaces de programação de aplicativos MQI e AMI.
Este tópico contém as seguintes seções:
O nó MQInput recebe uma mensagem de uma fila de mensagens do WebSphere MQ que está definida no gerenciador de filas do intermediário. O nó utiliza MQGET para ler ums mensagen de uma fila específica, e estabelece o ambiente de processamente para a mensagem. Se apropriado, você pode definir a fila de entrada como uma fila em cluster ou fila compartilhada do WebSphere MQ.
Os fluxos de mensagens que manipulam as mensagens recebidas entre conexões do WebSphere MQ devem sempre ser iniciados com um nó MQInput. Você pode definir as propriedades do nó MQInput para controlar a forma pela qual as mensagens são recebidas, fazendo com que opções MQGET apropriadas sejam definidas. Por exemplo, você pode indicar que uma mensagem deve ser processada sob controle de transação. Você também pode solicitar que a conversão de dados seja executada durante a recepção de cada mensagem de entrada.
Se você incluir um nó de saída em um fluxo de mensagens que inicia com um nó MQInput, o nó de saída pode ser qualquer um dos nós suportados, incluindo nós de saída definidos pelo usuári o; não é necessário incluir um nó MQOutput. É possível gerar um fluxo de mensagens que receba mensagens de clientes do WebSphere MQ e gere mensagens para clientes que utilizam qualquer um dos transportes suportados para conectar-se ao intermediário, porque é possível configurar o fluxo de mensagens para solicitar que o intermediário forneça qualquer conversão necessária.
Se você criar um fluxo de mensagens para utilizar como um subfluxo, não poderá utilizar um nó de entrada padrão; é necessário utilizar um nó Entrada como o primeiro nó para criar um terminal In para o subfluxo.
Se seu fluxo de mensagens não receber mensagens através das conexões do WebSphere MQ, é possível escolher um dos nós de entrada suportados.
O nó MQInput está contido no repositório da paleta do WebSphere MQ e é representado no ambiente de trabalho pelo seguinte ícone:
Você pode visualizar amostras apenas quando utilizar o centro de informações integrado ao Message Brokers Toolkit.
O nó MQInput roteia cada mensagem recuperada com êxito para o terminal Out. Se essa ação falhar, a mensagem será repetida. Se a contagem de restaurações for excedida (conforme definido pelo atributo BackoutThreshold da fila de entrada), a mensagem será roteada para o terminal Failure; você poderá conectar nós a este terminal para manipular esta condição. Se você não tiver conectado ao terminal Failure, a mensagem será gravada na fila de restauração.
Se a mensagem for capturada por esse nó após a emissão de uma exceção no fluxo de mensagens, a mensagem será roteada para o terminal Catch. Se você não tiver conectado o terminal Catch, a mensagem entrará em loop contínuo através do nó, até que o problema seja resolvido.
Defina uma fila de restauração ou uma fila de devoluções (DLQ) para impedir o loop contínuo da mensagem através do nó.
O tamanho do buffer MQGET é implementado internamente pelo intermediário e não é possível alterá-lo. A descrição a seguir é apenas informativa. Você não deve contar com ele quando desenvolver fluxos de mensagens, porque a implementação interna pode ser alterada.
Quando o nó MQInput for inicializado, ele configurará o tamanho do buffer padrão do primeiro MQGET para 4 KB. O nó MQInput monitora o tamanho das mensagens e aumenta ou reduz o tamanho do buffer:
Por exemplo, se a primeira mensagem recebida pelo nó tiver 20 MB, e as próximas 10 mensagens tiverem 14 MB cada uma, o tamanho do buffer será aumentado de 4 KB para 20 MB e permanecerá em 20 MB para as 10 mensagens. Entretanto, após a décima mensagem, o tamanho do buffer é reduzido para 14 MB.
Quando tiver colocado um nó MQInput em um fluxo de mensagens, é possível configurá-lo; consulte Configurando um Nó do Fluxo de Mensagens. As propriedades do nó são exibidas na visualização Propriedades. Para exibir as propriedades do nó no diálogo Propriedades, dê um clique duplo no nó ou clique com o botão direito no nó e clique em Propriedades. Todas as propriedades obrigatórias que não tiverem um valor padrão definido serão marcadas com um asterisco.
Os terminais do nó MQInput são descritos na tabela a seguir.
Terminal | Descrição |
---|---|
Failure | O terminal de saída para o qual a mensagem é encaminhada se um ocorrer erro. Mesmo que a propriedade Validação esteja definida, as mensagens propagadas para esse terminal não serão validadas. |
Out | O terminal de saída para o qual a mensagem será roteada se for recuperada com êxito da fila do WebSphere MQ. |
Catch | O terminal de saída para o qual a mensagem será roteada se for emitida uma exceção downstream e capturada por este nó. |
As tabelas a seguir descrevem as propriedades do nó. A coluna com cabeçalho M indica se a propriedade é obrigatória (marcada com um asterisco caso seja necessário digitar um valor quando nenhum padrão for definido); a coluna com cabeçalho C indica se a propriedade é configurável (você poderá alterar o valor quando incluir o fluxo de mensagens ao arquivo BAR para implementá-lo).
As propriedades Descrição do nó MQInput são descritas na tabela a seguir.
Propriedade | M | C | Padrão | Descrição |
---|---|---|---|---|
Nome do Nó | Não | Não | O tipo de nó, MQInput | O nome do nó. |
Descrição Breve | Não | Não | Uma breve descrição do nó. | |
Descrição Longa | Não | Não | Texto que descreve a finalidade do nó no fluxo de mensagens. |
As propriedades Básicas do nó MQInput são descritas na tabela a seguir.
Propriedade | M | C | Padrão | Descrição |
---|---|---|---|---|
Nome da Fila | Sim | Sim | O nome da fila de entrada WebSphere MQ a partir da qual este nó recupera mensagens (usando o MQGET) para processamento pelo fluxo de mensagens.É necessário predefinir esta fila do WebSphere MQ para o gerenciador de filas que hospeda o intermediário no qual o fluxo de mensagens é implementado. |
As propriedades Avançadas do nó MQInput são descritas na tabela a seguir.Configure estas propriedades para determinar como a mensagem é processada, como suas características transacionais. Muitas destas propriedades mapeiam para opções na chamada MQGET.
Propriedade | M | C | Padrão | Descrição |
---|---|---|---|---|
Modo de Transação | Sim | Não | Sim | Esta propriedade controla se a mensagem que chega
é recebida no ponto de sincronização. Os valores válidos são Automático, Sim e Não.
|
Modo de ordem | Sim | Não | Padrão | A ordem em que as mensagens são recuperadas da
fila de entrada e processadas. Os valores válidos são
Padrão,
Por ID de
Usuário, e
Por Ordem de
Fila.Essa propriedade terá efeito somente se a propriedade de fluxo de mensagens Instâncias Adicionais na guia Instâncias estiver definida como maior que
zero; isto é, se vários encadeamentos lerem a fila de entrada. Os valores válidos são:
|
Ordem Lógica | Sim | Não | Selecionada | Se você selecionar essa caixa de opções, as mensagens serão
recebidas em ordem lógica, conforme definição do WebSphere MQ. Essa opção é mapeada para a opção MQGMO_LOGICAL_ORDER
do MQGMO do MQI. Se você desmarcar a caixa de opções, as mensagens enviadas como parte de um grupo não serão recebidas em uma ordem predeterminada. Se um intermediário espera receber mensagens em grupos, e você não tiver selecionado esta caixa de opção, a ordem das mensagens de entrada não é importante, ou será necessário projetar o fluxo de mensagens para processá-las de maneira apropriada. Você também deve selecionar Organizar por Grupo de Mensagem se você quiser que o processamento de mensagens seja organizado somente depois que a mensagem final de um grupo tenha sido recebida e processada. Informações adicionais sobre as opções para as quais esta propriedade mapeia estão disponíveis na seção Referência de Programação do Aplicativo do WebSphere MQ Versão 6: centro de informações on-line, ou no manual da Versão 5.3 no WebSphere MQ.
|
Todas as mensagens disponíveis | Sim | Não | Não Selecionada | Selecione Todas as Mensagens Disponíveis se
você quiser que a recuperação e o processamento de mensagens sejam concluídos somente quando todas as mensagens em um único grupo estiverem disponíveis. Essa propriedade é mapeada para a opção MQGMO_ALL_MSGS_AVAILABLE do MQGMO do
MQI. Desmarque esta caixa se a recuperação de mensagem não depender disponibilidade de todas as mensagens de um grupo antes que o processamento seja iniciado. Informações adicionais sobre as opções para as quais esta propriedade mapeia estão disponíveis na seção Referência de Programação do Aplicativo do WebSphere MQ Versão 6: centro de informações on-line, ou no manual da Versão 5.3 no WebSphere MQ. |
Corresponder ID de mensagem | Não | Não | Um ID da mensagem que deve corresponder ao ID
da mensagem no MQMD da mensagem de entrada.Digite um mensagem de Identificador se desejar que o nó de entrada
receba apenas mensagens que contenham um valor do Identificador de mensagem correspondente no campo MsgId do
MQMD. Digite um número par de dígitos hexadecimais (os caracteres 0 a 9, A a F, e a a f são válidos) até um máximo de 48 dígitos. Se o identificador de mensagens compatível que você inserir for menor que o tamanho do campo MsgId, Tornar-se compatível a ID de mensagem é acomodado à direita com caracteres X'00'. Essa propriedade é mapeada para a opção MQMO_MATCH_MSG_ID do MQGMO do MQI. Deixe essa propriedade em branco se não desejar que o nó de entrada verifique se o ID da mensagem é correspondente. Informações adicionais sobre as opções para as quais esta propriedade mapeia estão disponíveis na seção Referência de Programação do Aplicativo do WebSphere MQ Versão 6: centro de informações on-line, ou no manual da Versão 5.3 no WebSphere MQ. |
|
Corresponder ID de correlação | Não | Não | Um ID de correlação que deve corresponder ao ID
de correlação no MQMD da mensagem de entrada.Digite um identificador de mensagem se desejar que o nó de entrada
receba apenas mensagens que contenham um valor do identificador de correlação correspondente no campo
CorrelId do MQMD. Digite um número par de dígitos hexadecimais (os caracteres 0 a 9, A a F, e a a f são válidos) até um máximo de 48 dígitos. Se o ID que você digitar for menor que o campo CorrelId, ele será preenchido à direita com caracteres X'00'. Essa propriedade é mapeada para a opção MQMO_MATCH_CORREL_ID do MQGMO do MQI. Deixe esta propriedade em branco se não desejar que o nó de entrada verifique se o CorrelID é correspondente. Informações adicionais sobre as opções para as quais esta propriedade mapeia estão disponíveis na seção Referência de Programação do Aplicativo do WebSphere MQ Versão 6: centro de informações on-line, ou no manual da Versão 5.3 no WebSphere MQ. |
|
Converter | Sim | Não | Não Selecionada | Se você selecionar essa caixa de opções, o
WebSphere MQ converterá os dados na mensagem a ser recebida,
em conformidade com os valores CodedCharSetId e Encoding definidos no MQMD. Selecione Converter (Convert) se
desejar que o WebSphere MQ execute conversão de dados na
mensagem quando ela for recuperada da fila. Essa opção será útil se você estiver
manipulando mensagens no domínio BLOB, ou estiver utilizando um analisador definido pelo
usuário. Não selecione esta opção se estiver analisando mensagens com os domínios XML
ou MRM, porque o analisador faz a conversão. O WebSphere MQ converte a mensagem de entrada à codificação e conjunto de caracteres codificados especificados no MQMD que o nó de entrada fornecce na chamada MQGET para recuperar a mensagem da fila de entrada. O intermediário utilliza a opção MQGMO_CONVERT na chamada MQGET; as regras comuns de conversão de WebSphere MQ se aplicam. Os valores especificados nas opções Converter codificação e Converter ID de conjunto de caracteres codificadossão utilizadas nos campos Codificação MsgDesc e CCSID na chamada MQGET. OWebSphere MQ pode converter a mensagem de entrada apenas se o campo Formatar for um valor interno do WebSphere MQ que identifica dados de caracteres ou se uma saída de conversão de dados existir no WebSphere MQ. Essa propriedade é mapeada para a opção MQGMO_CONVERT do MQGMO do MQI. Limpe a caixa de opções se não desejar que o WebSphere MQ converta a mensagem. Se você selecionar esta caixa de opção, também poderá especificar:
Para obter informações adicionais sobre conversão de dadosWebSphere MQ, e porquê você pode escolher utilizar esta opção, consulte a seção Guia de Programação do Aplicativo do WebSphere MQ Versão 6: centro de informações on-line,ou o manual Versão 5.3 no WebSphere MQ. Para informações adicionais sobre os valores que podem ser especificados para Converter codificação e Converter ID de conjunto de caracteres codificado, consulte a seção Referência de Programação do Aplicativo do WebSphere MQ Versão 6: centro de informações on-line, ou o manual Versão 5.3 no WebSphere MQ. |
Converter codificação | Não | Não | A representação utilizada para valores numéricos nos dados da mensagem, expressa como um valor inteiro. Esta propriedade será válida apenas se você tiver selecionado Converter. | |
Converter ID do conjunto de caracteres codificados | Não | Não | O identificador do conjunto de caracteres codificados de dados de caracteres nos dados da mensagem, expresso como um valor inteiro. Esta propriedade será válida apenas se você tiver selecionado Converter. | |
Atribuir por grupo de mensagens | Sim | Não | Não Selecionada | Essa propriedade controla quando uma transação será confirmada ao
processar mensagens que fazem parte de um grupo de mensagens. Se você selecionar a caixa de opções, a transação será consolidada
quando o grupo de mensagem tiver sido processado.Se você deixar essa caixa de opções limpa, será executada uma consolidação
após cada mensagem ter sido propagada totalmente através do fluxo de mensagens.
Essa propriedade é relevante somente se você tiver selecionado Ordem Lógica. Defina a propriedade Modo de Ordem como Por Ordem de Fila se as mensagens em um grupo tiverem que ser recuperadas e processadas na ordem em que elas são exibidas na fila. |
Token de serialização do z/OSn | Não | Não | Apenas no z/OS: Um token definido pelo usuário
para suporte ao aplicativo serializado. O valor especificado deve estar de acordo com as regras para um ConnTag válido na
estrutura MQCNO do WebSphere MQ. Digite um token de serialização se desejar
utilizar o acesso serializado para recursos compartilhados fornecidos pelo
WebSphere MQ. O valor fornecido para o token de serialização deve estar de acordo com as regras descritas na seção Referência de Programação do Aplicativo do WebSphere MQ Versão 6: centro de informações on-line, ou o manual Versão 5.3 no WebSphere MQ. Para maiores informações sobre serialização e compartilhamento de filas no z/OS, consulte a seção Guia de Planejamento e Conceitos do WebSphere MQ Versão 6: centro de informações on-line, ou o manual Versão 5.3 WebSphere MQ. |
|
Tópico | Não | Sim | O tópico padrão para a mensagem de entrada.É possível associar uma mensagem a um tópico
de Publicação/Assinatura utilizando esta propriedade. Você pode inserir quaisquer
caracteres como o nome do tópico. Quando as mensagens são passarem pelo nó MQInput, elas são colocadas em qualquer nome de tópico digitado. (Se estiver utilizando Publicação/Assinatura,
poderá efetuar assinatura em um tópico e ver as mensagens que passam pelo nó MQInput e onde foram publicadas
com esse nome de tópico.) Se a mensagem que
chega tiver um cabeçalho MQRFH2, não será necessário definir um valor para a propriedade
Tópico (Topic) porque o valor pode ser
obtido da pasta <psc> no cabeçalho MQRFH2; por exemplo: <psc><Topic>stockquote</Topic></psc>Se você definir um valor de propriedade Tópico (Topic) e esse valor diferir do valor <Topic> no cabeçalho MQRFH2, o valor no cabeçalho MQRFH2 terá precedência. |