Hi

Yeah its more a pure OSGi question.

How do you deploy the WebSphere client JARs?
And I think others have installed and use WebSphereMQ on SMX/Karaf. So
its doable.

Check this blog
http://lowry-techie.blogspot.com/2010/11/camel-integration-with-websphere-mq.html


On Fri, Feb 11, 2011 at 12:08 PM, Olivier.Roger <olivier.ro...@bsb.com> wrote:
>
> Hello Camel !
>
> I am currently trying to configure my route, deployed in Fuse 4.3, to poll
> messages from a WebSphere MQ Queue.
>
> The issue is more related to OSGI than Camel but maybe someone experienced
> the same issue before, so I take my chance to post it here...
>
> The idea is to create a feature that could load the WebSphere 7 thin jms
> client bundles and the route which transport messages from WebSphere MQ
> queue to an ActiveMQ queue.
>
> The client jars are the following (from the /runtime directory):
>
> * com.ibm.ws.ejb.thinclient_7.0.0.jar
> * com.ibm.ws.orb_7.0.0.jar
> * com.ibm.ws.sib.client.thin.jms_7.0.0.jar
>
> Here is the JmsComponent configuration:
>
>        <bean id="wasmq" class="org.apache.camel.component.jms.JmsComponent">
>                <property name="configuration" ref="wasJmsConfiguration" />
>                <property name="destinationResolver" 
> ref="wasDestinationResolver" />
>        </bean>
>
>        <bean id="wasJmsConfiguration"
> class="org.apache.camel.component.jms.JmsConfiguration">
>                <property name="connectionFactory" ref="wasConnectionFactory" 
> />
>                <property name="concurrentConsumers" value="1" />
>        </bean>
>
>        <bean id="wasJndiTemplate" 
> class="org.springframework.jndi.JndiTemplate">
>                <property name="environment">
>                        <props>
>                                <prop
> key="java.naming.factory.initial">com.ibm.websphere.naming.WsnInitialContextFactory</prop>
>                                <prop 
> key="java.naming.provider.url">${was.jms.broker.url}</prop>
>                        </props>
>                </property>
>        </bean>
>
>        <bean id="wasConnectionFactory"
> class="org.springframework.jndi.JndiObjectFactoryBean">
>                <property name="jndiTemplate" ref="wasJndiTemplate" />
>                <property name="jndiName" value="${messaging.cf.jndi.name}" />
>        </bean>
>
> The bundle required some tweaking to have the correct import-packages (might
> need more I am afraid):
>
>                                                <Import-Package>
>                                                        
> org.apache.activemq.camel.component,
>                                                        
> org.apache.camel.component.jms,
>                                                        
> org.apache.servicemix.camel.nmr,
>                                                        
> org.apache.servicemix.nmr.api,
>                                                        
> org.springframework.jndi,
>                                                        
> org.springframework.jms,
>                                                        
> org.springframework.jms.support,
>                                                        
> org.springframework.jms.support.destination,
>                                                        
> org.springframework.beans,
>                                                        
> org.springframework.beans.factory,
>                                                        org.apache.activemq,
>
> com.ibm.websphere.naming,
>                                                        com.ibm.CORBA.iiop,
>
> com.ibm.ws.sib.api.jmsra.impl,
>                                                        com.ibm.ejs.j2c,
>                                                        javax.naming,
>                                                        javax.naming.spi,
>                                                        javax.net,
>                                                        *
>                        </Import-Package>
>
> Here is the stack I get at Runtime (
> http://camel.465427.n5.nabble.com/file/n3380989/WebSphere.camel.stack.txt
> full stack enclosed )
>
> Caused by: java.lang.IllegalStateException: Cannot convert value of type
> [com.ibm.ws.sib.api.jms.impl.JmsConnectionFactoryImpl] to required type
> [javax.jms.ConnectionFactory] for property 'connectionFactory': no matching
> editors or conversion strategy found
>
> I did some googling and according to
> http://forum.springframework.org/showthread.php?t=34920 This post , the
> cause might be related to the JMS api being present at multiple level in the
> classpath...
>
> I am far from being an OSGi expert and I have some difficulties to see how I
> could solve this issue.
> --
> View this message in context: 
> http://camel.465427.n5.nabble.com/OSGi-JmsComponent-config-for-WebSphere-Queue-tp3380989p3380989.html
> Sent from the Camel - Users mailing list archive at Nabble.com.
>



-- 
Claus Ibsen
-----------------
FuseSource
Email: cib...@fusesource.com
Web: http://fusesource.com
Twitter: davsclaus
Blog: http://davsclaus.blogspot.com/
Author of Camel in Action: http://www.manning.com/ibsen/

Reply via email to