You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomee.apache.org by ro...@gmail.com,
an...@apache.org on 2012/12/07 06:17:03 UTC
CMS diff: TomEE and WebSphere MQ
Clone URL (Committers only):
https://cms.apache.org/redirect?new=anonymous;action=diff;uri=http://openejb.apache.org/tomee-and-webspheremq.mdtext
rohiddev@gmail.com
Index: trunk/content/tomee-and-webspheremq.mdtext
===================================================================
--- trunk/content/tomee-and-webspheremq.mdtext (revision 1418184)
+++ trunk/content/tomee-and-webspheremq.mdtext (working copy)
@@ -15,3 +15,117 @@
KIND, either express or implied. See the License for the
specific language governing permissions and limitations
under the License.
+
+**Steps to integrate TomEE with Websphere MQ** <br>
+
+1. Unzip rar file place jars under tomee/lib
+
+2. Added the below to conf/tomee.xml
+
+
+< tomee> </br>
+ < Container id="wmq" type="MESSAGE"><br>
+ ResourceAdapter=wmqRA
+ MessageListenerInterface=javax.jms.MessageListener
+ ActivationSpecClass=com.ibm.mq.connector.inbound.ActivationSpecImpl
+</br>
+ < /Container>
+
+
+ < Resource id="wmqRA" type="com.ibm.mq.connector.ResourceAdapterImpl" <br>class-name="com.ibm.mq.connector.ResourceAdapterImpl">
+ <br>connectionConcurrency=5 </br>
+ maxConnections=10 </br>
+ logWriterEnabled=true </br>
+ reconnectionRetryCount=5 </br>
+ reconnectionRetryInterval=300000 </br>
+ traceEnabled=false </br>
+ traceLevel=3 </br>
+ < /Resource>
+
+ < Resource **id="qcf"** </br> type="javax.jms.ConnectionFactory" class-name="com.ibm.mq.connector.outbound.ManagedConnectionFactoryImpl">
+ TransactionSupport=none </br>
+ ResourceAdapter=wmqRA </br>
+ HostName=10.a.b.c </br>
+ Port=1414 </br>
+ QueueManager=QM_TIERL</br>
+ Channel=SYSTEM.ADMIN.SVRCONN</br>
+ TransportType=Client</br>
+ UserName=xyz</br>
+ Password=*****</br>
+ </Resource>
+
+ < Resource id="wmq-javax.jms.QueueConnectionFactory" </br> type="javax.jms.QueueConnectionFactory" class-name="com.ibm.mq.connector.outbound.ManagedQueueConnectionFactoryImpl">
+ TransactionSupport=xa </br>
+ ResourceAdapter=wmqRA </br>
+ < /Resource>
+
+ < Resource id="wmq-javax.jms.TopicConnectionFactory" </br> type="javax.jms.TopicConnectionFactory" class-name="com.ibm.mq.connector.outbound.ManagedTopicConnectionFactoryImpl">
+ TransactionSupport=xa </br>
+ ResourceAdapter=wmqRA </br>
+ < /Resource>
+
+ < Resource **id="queue"** type="javax.jms.Queue" </br>
+class-name="com.ibm.mq.connector.outbound.MQQueueProxy"> </br>
+ arbitraryProperties </br>
+ baseQueueManagerName </br>
+ baseQueueName </br>
+ CCSID=1208 </br>
+ encoding=NATIVE </br>
+ expiry=APP </br>
+ failIfQuiesce=true </br>
+ persistence=APP </br>
+ priority=APP </br>
+ readAheadClosePolicy=ALL </br>
+ targetClient=JMS </br>
+ </Resource>
+
+ < Resource id="wmq-javax.jms.Topic" type="javax.jms.Topic" class-name="com.ibm.mq.connector.outbound.MQTopicProxy">
+ arbitraryProperties </br>
+ baseTopicName </br>
+ brokerCCDurSubQueue=SYSTEM.JMS.D.CC.SUBSCRIBER.QUEUE </br>
+ brokerDurSubQueue=SYSTEM.JMS.D.SUBSCRIBER.QUEUE </br>
+ brokerPubQueue </br>
+ brokerPubQueueManager </br>
+ brokerVersion=1 </br>
+ CCSID=1208 </br>
+ encoding=NATIVE </br>
+ expiry=APP </br>
+ failIfQuiesce=true </br>
+ persistence=APP </br>
+ priority=APP </br>
+ readAheadClosePolicy=ALL </br>
+ targetClient=JMS </br>
+ </Resource> </br>
+
+< /tomee>
+
+3. in web.xml add the below to access resources</br>
+ < resource-ref> </br>
+ < res-ref-name>myqcf< /res-ref-name> </br>
+ < res-type>javax.jms.ConnectionFactory < /res-type></br>
+ < res-auth>Container</res-auth>< /br>
+ < res-sharing-scope>Shareable< /res-sharing-scope></br>
+ < mapped-name>qcf< /mapped-name></br>
+ < /resource-ref>
+
+ < resource-env-ref></br>
+ < resource-env-ref-name>myqueue< /resource-env-ref-name></br>
+ < resource-env-ref-type>javax.jms.Queue< /resource-env-ref-type></br>
+ < mapped-name>queue< /mapped-name></br>
+ < /resource-env-ref></br>
+
+**Java Code: </br>**
+
+@Resource(name = "qcf") </br>
+private ConnectionFactory connectionFactory; </br>
+@Resource(name = "queue") </br>
+private Queue queue;</br></br>
+Connection connection = connectionFactory.createConnection();</br>
+Session session = connection.createSession(false, QueueSession.AUTO_ACKNOWLEDGE);
+MessageProducer producer = session.createProducer(queue);</br>
+TextMessage message = session.createTextMessage();</br>
+message.setText("Test Message");</br>
+connection.start();</br>
+producer.send(message);</br>
+session.close();</br>
+connection.close();</br>