O WebSphere Message Broker suporta várias interfaces de programação que estão sendo usadas por aplicativos do WebSphere MQ atualmente; ele não fornece nenhuma interface de programação exclusiva.
O MQI fornece umas poucas chamadas que permitem que um aplicativo interaja com outros aplicativos em uma rede de gerenciadores de filas do WebSphere MQ. As chamadas suportam uma grande variedade de parâmetros que permitem uma opção variada de opções de processamento para cada mensagem.
Os aplicativos clientes que utilizam MQI podem ser executados em qualquer sistema operacional WebSphere MQ suportado e, portanto, qualquer limitação aplicada ao idioma ou função é definida pelo produto relevante para esse sistema operacional.
O MQI é descrito nas seções Referência de Programação do Aplicativo e Guia de Programação do Aplicativo no Centro de Informações Online do WebSphere MQ Versão 7. Também são fornecidos detalhes de suporte à linguagem de programação e ao sistema operacional disponível para clientes que utilizam essa interface.
O AMI foi projetado para simplificar a tarefa dos programadores de aplicativo, centralizando a seleção de parâmetros opcionais fora do programa aplicativo. Ele também fornece suporte para as funções avançadas disponíveis a partir do broker. O AMI foi projetado para aplicativos gerais do sistema de mensagens com e sem um broker.
As funções principais do AMI são pacotes de opções definidos pelo administrador conhecidos como políticas e serviços. Um aplicativo especifica um serviço para determinar o suporte de mensagem subjacente necessário, e associa uma política ao envio ou recebimento de uma mensagem para controlar atributos para processamento de mensagens, como prioridade.
As políticas e serviços indicam que o aplicativo não precisa entender os detalhes do cabeçalho MQRFH2 e a interface MQI.
Aplicativos do cliente utilizando o AMI são restritos aos sistemas operacionais e linguagens de programação suportados por esta interface. O AMI é definido na seção Guia do Usuário de Publicação/Assinatura no Centro de Informações Online do WebSphere MQ Versão 7.
Se você tiver aplicativos de usuário final existentes que estão gravados nessas interfaces, geralmente, eles poderão ser executados sem alteração em um ambiente de broker. Você deve criar os fluxos de mensagens para interagir com estes aplicativos a partir dos protocolos suportados, utilizando os nós de entrada e de saída apropriados. O WebSphere Message Broker fornece nós de entrada e saída integrados para seus protocolos suportados e é possível criar seus próprios nós definidos pelo usuário para suportar protocolos adicionais.
Você também pode criar novos aplicativos de usuário final para interagir com o broker.
O WebSphere Message Broker fornece analisadores para muitos cabeçalhos do WebSphere MQ e pode, assim, aceitar mensagens que contêm esses cabeçalhos do protocolo do WebSphere MQ Enterprise Transport.
As mensagens devem incluir um MQMD (WebSphere MQ Message Descriptor) como o primeiro cabeçalho, que deve preceder dados do usuário ou do aplicativo em cada mensagem. O MQMD contém informações básicas de controle que devem viajar com a mensagem, incluindo:
Quando uma mensagem é processada por um broker do WebSphere Message Broker, ela normalmente (mas não necessariamente) possui um ou mais cabeçalhos adicionais. O cabeçalho após o MQMD é sempre identificado no campo de formato no MQMD e ele próprio contém outro campo de formato para identificar o cabeçalho que segue, ou o formato dos dados do usuário.
Os cabeçalhos adicionais podem incluir:
Utilize o cabeçalho MQRFH2 em todos os novos aplicativos gravados para o ambiente WebSphere Message Broker que usam um protocolo suportado na tecnologia WebSphere MQ. O cabeçalho MQRFH2 deve estar imediatamente antes do corpo da mensagem (isto é, o último cabeçalho).
Se um cabeçalho MQRFH2 não estiver incluído (que é normalmente o caso de o aplicativo utilizar um protocolo suportado que não se baseia na tecnologia WebSphere MQ), você deverá configurar o fluxo de mensagens que processa suas mensagens para especificar as características da mensagem (definindo as propriedades do nó input).