0

I am trying to connect to WMQ from JBoss Developer Studio. I get the following error:

Unable to start bundle: com.ibm.msg.client.osgi.jms [10]

My config:

<blueprint xmlns="http://www.osgi.org/xmlns/blueprint/v1.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.osgi.org/xmlns/blueprint/v1.0.0 https://www.osgi.org/xmlns/blueprint/v1.0.0/blueprint.xsd                            http://camel.apache.org/schema/blueprint http://camel.apache.org/schema/blueprint/camel-blueprint.xsd">
<bean class="org.apache.camel.component.jms.JmsConfiguration" id="wmqConfig">
    <property name="connectionFactory" ref="wmqConnectionFactory"/>
    <property name="concurrentConsumers" value="10"/>
</bean>
<bean class="org.apache.camel.component.jms.JmsComponent" id="wmq">
    <property name="configuration" ref="wmqConfig"/>
</bean>
<bean class="com.ibm.mq.jms.MQQueueConnectionFactory" id="wmqConnectionFactory">
    <property name="transportType" value="1"/>
    <property name="hostName" value="10.0.**.**"/>
    <property name="port" value="1414"/>
    <property name="queueManager" value="MQ_ADM"/>
    <property name="targetClientMatching" value="true"/>
</bean>
<bean class="com.ibm.mq.jms.MQQueue" id="WMQ-Queue">
    <property name="baseQueueManagerName" value="MQ_ADM"/>
    <property name="baseQueueName" value="MQ_QUEUE"/>
    <property name="targetClient" value="1"/>
</bean>
<camelContext id="_context1" xmlns="http://camel.apache.org/schema/blueprint">
    <route id="wmq-to-amq-bridge">
        <from id="_from1" uri="jms:queue:wmq"/>
        <to id="_to1" uri="file:C:/queue/"/>
    </route>
</camelContext>

I have added com.ibm.msg.client.osgi.jms_7.5.0.2 and com.ibm.msg.client.osgi.jms.prereq_7.5.0.2 to my local Maven repo.

1 Answers1

0

An "Unable to start bundle" message might sometimes be accompanied by more detail. If it is, it might be useful for troubleshooting. In any case, my experience is that you will need the complete set of IBM W-MQ OSGi-compliant bundles if you're running in an OSGi environment. As I recall, there are nine of them. com.ibm.msg.client.osgi.jms.prereq is perhaps the one that you don't want, because the OSGi environment (I'm guessing Fuse 6.x in this case) probably has a provider of the javax.jms package already.

Kevin Boone
  • 4,092
  • 1
  • 11
  • 15