WebSphere Message Broker da soporte a varias interfaces de programación que utilizan actualmente las aplicaciones de WebSphere MQ; pero no proporciona ninguna interfaz de programación exclusiva.
MQI proporciona unas cuantas llamadas que permiten que una aplicación interactúe con otras aplicaciones de una red de gestores de colas de WebSphere MQ. Las llamadas dan soporte a un gran número de parámetros que permiten disponer de un amplio abanico de opciones de proceso para cada mensaje.
Las aplicaciones de cliente que utilizan MQI pueden ejecutarse en cualquier sistema operativo de WebSphere MQ soportado y, por tanto, cualquier limitación impuesta para un idioma o una función, viene definida por el producto relevante para ese sistema operativo.
La MQI se describe en las secciones Application Programming Reference y Application Programming Guide de Centro de información en línea de WebSphere MQ Versión 7 . También ofrecen detalles del soporte de lenguajes de programación y sistemas operativos disponibles para clientes que utilizan esta interfaz.
AMI está diseñada para simplificar la tarea de programador de aplicaciones centralizando la selección de parámetros opcionales fuera del programa de aplicación. También proporciona soporte para las funciones más avanzadas disponibles desde el intermediario. AMI está diseñada para las aplicaciones de mensajería general con y sin intermediario.
Las funciones principales de AMI son paquetes de opciones definidos por el administrador que se denominan políticas y servicios. Una aplicación especifica un servicio para determinar el soporte de mensajería subyacente que se necesita y asocia una política con el envío o la recepción de un mensaje para controlar atributos para el proceso de mensajes como, por ejemplo, la prioridad.
Las políticas y los servicios significan que la aplicación no tiene que entender detalles de la cabecera MQRFH2 y la interfaz MQI.
Las aplicaciones de cliente que utilizan AMI están limitadas por los sistemas operativos y lenguajes de programación soportados por esta interfaz. La AMI está definida en la sección Publish/Subscribe User's Guide del Centro de información en línea de WebSphere MQ Versión 7.
Si ya tiene aplicaciones de usuario final escritas para estas interfaces, normalmente podrán ejecutarse sin modificarlas en un entorno de intermediario. Debe crear los flujos de mensajes para interactuar con estas aplicaciones mediante los protocolos soportados, utilizando los nodos de entrada y salida apropiados. WebSphere Message Broker proporciona nodos de entrada y salida incorporados para los protocolos soportados y puede crear sus propios nodos definidos por el usuario para dar soporte a protocolos adicionales.
También puede crear nuevas aplicaciones de usuario final para interactuar con el intermediario.
WebSphere Message Broker proporciona analizadores para muchas cabeceras de WebSphere MQ y, por tanto, puede aceptar mensajes que contienen estas cabeceras mediante el protocolo WebSphere MQ Enterprise Transport.
Los mensajes deben incluir un descriptor de mensaje (MQMD) de WebSphere MQ como primera cabecera, que debe preceder a los datos de usuario o de aplicación en cada mensaje. El MQMD contiene información básica de control que debe viajar con el mensaje, incluido:
Cuando un mensaje es procesado por un intermediario de WebSphere Message Broker, normalmente (pero no necesariamente) tiene una o más cabeceras adicionales. La cabecera que sigue a la MQMD siempre está identificada en el campo formato dentro de la MQMD, y dentro de sí misma contiene otro campo de formato para identificar la cabecera siguiente o el formato de los datos de usuario.
Las cabeceras adicionales pueden incluir:
Utilice la cabecera MQRFH2 en todas las nuevas aplicaciones escritas para el entorno de WebSphere Message Broker que utilizan un protocolo soportado basado en la tecnología WebSphere MQ. La cabecera MQRFH2 debe estar justo antes del cuerpo del mensaje (es decir, debe ser la última cabecera).
Si no se incluye una cabecera MQRFH2 (cosa que, normalmente, sucede cuando la aplicación utiliza un protocolo soportado que no está basado en la tecnología de WebSphere MQ), debe configurar el flujo de mensajes que procesa sus mensajes para que especifique las características del mensaje (estableciendo las propiedades del nodo de entrada).