Dear fellow ServiceMix users, dear developers, I've finally managed - with the help of the SM documentation (!), to solve the problem with creating a JMS SU using Websphere MQ instead of ActiveMQ (nothing wrong with ActiveMQ!). I haven't tested the SU thoroughly, but it is started and shows up in the jbi:list command, which is a huge progress on its own.
I'd like to describe what I did to spare others the trial I went through. Again thanks to Jean-Baptiste, Claus and Björn for their inputs. === If you have Websphere MQ installed on the machine you are using ServiceMix on, it is very likely that the Websphere installer has modified your environment variables to point to the WMQ installation: Example: CLASSPATH=C:\APPS\IBM\WebSphere MQ\Java\lib\com.ibm.mqjms.jar;C:\APPS\IBM\WebSphere MQ\Java\lib\com.ibm.mq.jar;. MQFT_JAVA_LIB_PATH=C:\APPS\IBM\WebSphere MQ\java\jre\lib MQFT_JRE_BIN_PATH=C:\APPS\IBM\WebSphere MQ\java\jre\bin MQ_FILE_PATH=C:\APPS\IBM\WebSphere MQ MQ_JAVA_DATA_PATH=C:\APPS\IBM\WebSphere MQ MQ_JAVA_INSTALL_PATH=C:\APPS\IBM\WebSphere MQ\Java MQ_JAVA_LIB_PATH=C:\APPS\IBM\WebSphere MQ\Java\lib MQ_JRE_PATH=C:\APPS\IBM\WebSphere MQ\java\jre You need to unset these variables not only if you include the MQ classes as OSGi bundles, but also because the classpath might contain references to jms.jar and jta.jar, which can then give you an error when the connection factory bean is assigned to the jms component connectionFactory property. You can then provide the OSGi version of the IBM jars (\Java\lib\OSGi) using the method as described by Björn (deploy as a feature from the local feature repository). This requires you to a) check in the OSGi jars into your local maven repository b) set up a features.xml file listing all the required features. c) adding the url to the local repository in servicemix using features:addUrl d) installing the feature When creating the JMS SU, the xbean.xml will not pick up the classes from the deployed osgi bundles for Websphere MQ! This will give you a ClassNotFound Exception i.e. on the MQQueueConnectionFactory. According to ServiceMix doc on Classloaders, you need to include a tag in your xbean.xml file, listing the libraries you need to use by referencing the osgi bundles by their symbolic names. The command osgi:headers will help you to find out the osgi symbolic name of a loaded bundle in ServiceMix. My xbean.xml now contains servicemix-jms osgi:org.apache.geronimo.specs.geronimo-jms_1.1_spec osgi:org.apache.geronimo.specs.geronimo-jta_1.1_spec osgi:com.ibm.msg.client.osgi.wmq osgi:com.ibm.msg.client.osgi.wmq.prereq osgi:com.ibm.msg.client.osgi.jms osgi:com.ibm.msg.client.osgi.wmq.nls osgi:com.ibm.msg.client.osgi.nls osgi:com.ibm.mq.osgi.directip You then build your SU + SA and deploy it into SM 4. I'm outrageously happy that SM now shows [ 226] [Active ] [ ] [ ] [ 55] DirectIP Plug-in (7.0.1.4) [ 227] [Active ] [ ] [ ] [ 55] NLS Plug-in (7.0.1.4) Fragments: 228 [ 228] [Resolved ] [ ] [ ] [ 55] WMQ NLS Plug-in (7.0.1.4) Hosts: 227 [ 229] [Active ] [ ] [ ] [ 55] Common Services J2SE Plug-in (7.0.1.4) [ 230] [Active ] [ ] [ ] [ 55] JMS client Plug-in (7.0.1.4) [ 231] [Active ] [ ] [ ] [ 55] WMQ prereq Plug-in (7.0.1.4) [ 232] [Active ] [ ] [ ] [ 55] WMQ provider Plug-in (7.0.1.4) [ 233] [Active ] [ ] [ ] [ 60] tutorial-sa (0.0.0) and - even better - karaf@root> jbi:list Components ---------- State Name Description [Started ] [servicemix-ftp ] [Started ] [servicemix-file ] [Started ] [servicemix-cxf-bc ] [Started ] [servicemix-cxf-se ] [Started ] [servicemix-jms ] [Started ] [servicemix-mail ] [Started ] [servicemix-smpp ] [Started ] [servicemix-snmp ] [Started ] [servicemix-bean ] [Started ] [servicemix-vfs ] [Started ] [servicemix-camel ] [Started ] [servicemix-http ] [Started ] [servicemix-drools ] [Started ] [servicemix-eip ] [Started ] [servicemix-quartz ] [Started ] [servicemix-osworkflow ] [Started ] [servicemix-scripting ] [Started ] [servicemix-validation ] [Started ] [servicemix-saxon ] [Started ] [servicemix-exec ] [Started ] [servicemix-wsn2005 ] Service Assemblies ------------------ State Name Description [Started ] [tutorial-sa ] Tutorial :: SA I will now start to explore the use of MQ Series in SM 4 deeper and - as we have to work in a XA environment - will come back to my original problem on using JMS over JCA and how to configure that in SM 4. Many thanks to those who helped. I hope this post is helpful to others. kind regards Michael -- View this message in context: http://servicemix.396122.n5.nabble.com/ServiceMix-4-use-WebSphere-MQ-as-JBI-SU-Solved-tp3409123p3409123.html Sent from the ServiceMix - User mailing list archive at Nabble.com.