This site contains the documentation that is relevant to older WSO2 product versions and offerings.
For the latest WSO2 documentation, visit https://wso2.com/documentation/.
MSMQ Transport
The msmq: component is a transport for working with Microsoft Message Queuing . This component natively sends and receives direct allocated ByteBuffer instances. This allows you to access the JNI layer without expensive memory copying. In fact, using ByteBuffer created with the method allocateDirect can be passed to the JNI layer, and the native code is able to directly access the memory.
URI format
msmq:msmqQueueName
Examples
msmq:DIRECT=OS:localhost\\private$\\test?concurrentConsumers=1 msmq:DIRECT=OS:localhost\\private$\\test?deliveryPersistent=true&priority=5&timeToLive=10
Configuring the MSMQ transport
In the axis2.xml file at location <PRODUCT_HOME>/repository/conf/axis2, define the MSMQ sender/listener pair as follows:
<transportSender name="msmq" class="org.apache.axis2.transport.msmq.MSMQSender"/> <transportReceiver name="msmq" class="org.apache.axis2.transport.msmq.MSMQListener"> <parameter name="msmq.receiver.host" locked="false">localhost</parameter> </transportReceiver>
Download
axis2-transport-msmq-1.1.0-wso2v6.jar
for 64-bit or 32-bit operating systems to<ESB_HOME>/repository/components/dropins
. This file provides the JNI invocation required by MSMQ bridging. Be sure to download the correct one for your operating system.Make sure MQ installed and running. For more information, see http://msdn.microsoft.com/en-us/library/aa967729.aspx.
Make sure that you have installed Visual C++ 2008 (VC9) and that it works with Microsoft Visual Studio 2008 Express.
The MSMQ examples only work on Windows, since they invoke Microsoft C++ API for MSMQ via JNI invocation.
For more information, see: