How the JNBridge JMS Adapter for BizTalk Server Works
The JNBridge JMS Adapter for BizTalk Server is an implementation of the BizTalk Adapter Framework that encapsulates the JMS (Java Message Service) client capabilities into a standard BizTalk adapter. As part of the deployment of a BizTalk Server orchestration, the adapter can be configured as endpoints bound to send and receive ports, allowing the BizTalk orchestration to produce and consume messages to and from JMS queues and topics. (See Figure 1).
The binding configures the ports to connect to specific JMS queues and topics on a specific JMS server. The adapter will work with any vendor's JMS implementation, including IBM WebSphere, Oracle WebLogic, ActiveMQ, GlassFish/OpenMQ, JBoss OpenJMS, Pramati JMS Server, SAP, SonicMQ, Tibco EMS.
Once the configuration and binding is completed, the orchestration is started. Any document directed to a send port bound to the adapter will be sent to the corresponding JMS queue or topic as a JMS message. Any JMS message appearing on a queue or topic bound to a receive port will be received from that queue or topic and enter the orchestration as a document at that receive port.
The underlying technology that supports any JMS implementation is JNBridgePro, JNBridge's Java and .NET interoperability product. JNBridgePro can be used to access any Java API from .NET, or any .NET API from Java. The JMS adapters implement JNBridgePro's interoperability technology to access the JMS API automatically for you; you don't need any knowledge of JMS to use the adapter.
Figure 2 shows the architecture of the JMS Adapter for BizTalk Server.
The adapter contains both a .NET side running in a CLR and a Java side running in a JVM, where the CLR and the JVM are running in the same process. JNBridgePro manages inter-platform communications. The JMS client classes are those provided by the vendor, which guarantees that the adapter will work with any vendor's JMS server. The adapter utilizes the BizTalk Adapter Framework to communicate with the BizTalk Server.