• Index
  •  » Talend Open Studio for Data Integration » Usage, Operation
  •  » JMS - Connection to WebSphere

#1 2011-02-24 10:48:38

blackfox
Guest

JMS - Connection to WebSphere

hi,

I'm trying to send a message to WebSphere JMS. Important: not to WebSphere MQ but to "WebSphere Default messaging provider" which is built in to WebSphere Application Server 6.1
As it is an existing Queue I have no choice to use MQ instead.

I've searched on talendforge and even all over the web for hours now and tried all possibile configurations I could imagine but I didn't manage - so now I'm stuck!
I've tried with tMOMOutput. There is only WebSphere MQ offered as MQ Server, tried it anyway.
My hope was tJMSOutput, but I don't know if "websphere-connector-1_5.jar" is the module to configure for me. Also I'm not sure what to specify as contextprovider and how to corretly build the server URL.

Does anybody have a hint for me how to configure JMS or where to find appropriate information?

regards,
blackfox

#2 2011-02-24 14:28:37

blackfox
Guest

Re: JMS - Connection to WebSphere

I think I am one step further now - probably.

I've found this: http://www-01.ibm.com/support/docview.wss?uid=swg24012804
installed it and loaded the librarys from the resulting libfolder (sibc.jms.jar, sibc.jndi.jar, sibc.orb.jar) with a tLibraryLoad for each of them.
My tJMSOutput-configuration is as following:
- Modulliste: sibc.jms.jar
- Context Provider: "com.ibm.websphere.naming.WsnInitialContextFactory"
- "iiop:localhost:7276" (tried without port, or "corbaloc:iiop:localhost" as well)
- Connection Factory JNDI Name and the following according to my queue-settings in WAS-Configuration

When executing the job I get the following exception:
Exception in component tJMSOutput_1
javax.naming.NamingException: Failed to initialize the ORB [Root exception is java.lang.ClassCastException: com.sun.corba.se.impl.orb.ORBImpl cannot be cast to com.ibm.CORBA.iiop.ORB]
    at com.ibm.ws.naming.util.Helpers.getOrb(Helpers.java:314)
    at com.ibm.ws.naming.util.WsnInitCtxFactory.getInitialContextInternal(WsnInitCtxFactory.java:384)
    at com.ibm.ws.naming.util.WsnInitCtx.getContext(WsnInitCtx.java:113)
    at com.ibm.ws.naming.util.WsnInitCtx.getContextIfNull(WsnInitCtx.java:428)
    at com.ibm.ws.naming.util.WsnInitCtx.lookup(WsnInitCtx.java:144)
    at javax.naming.InitialContext.lookup(InitialContext.java:392)
    at lvsimport.wakeupadapteraufruf_neu_0_1.WakeupAdapterAufruf_neu.tFixedFlowInput_1Process(WakeupAdapterAufruf_neu.java:442)
    at lvsimport.wakeupadapteraufruf_neu_0_1.WakeupAdapterAufruf_neu.tLibraryLoad_3Process(WakeupAdapterAufruf_neu.java:821)
    at lvsimport.wakeupadapteraufruf_neu_0_1.WakeupAdapterAufruf_neu.tLibraryLoad_2Process(WakeupAdapterAufruf_neu.java:733)
    at lvsimport.wakeupadapteraufruf_neu_0_1.WakeupAdapterAufruf_neu.tLibraryLoad_1Process(WakeupAdapterAufruf_neu.java:645)
    at lvsimport.wakeupadapteraufruf_neu_0_1.WakeupAdapterAufruf_neu.runJobInTOS(WakeupAdapterAufruf_neu.java:1004)
    at lvsimport.wakeupadapteraufruf_neu_0_1.WakeupAdapterAufruf_neu.main(WakeupAdapterAufruf_neu.java:875)
Caused by: java.lang.ClassCastException: com.sun.corba.se.impl.orb.ORBImpl cannot be cast to com.ibm.CORBA.iiop.ORB
    at com.ibm.ws.orb.GlobalORBFactory.init(GlobalORBFactory.java:85)
    at com.ibm.ejs.oa.EJSORBImpl.initializeORB(EJSORBImpl.java:174)
    at com.ibm.ejs.oa.EJSClientORBImpl.<init>(EJSClientORBImpl.java:97)
    at com.ibm.ejs.oa.EJSClientORBImpl.<init>(EJSClientORBImpl.java:73)
    at com.ibm.ejs.oa.EJSORB.init(EJSORB.java:386)
    at com.ibm.ws.naming.util.Helpers.getOrb(Helpers.java:305)
    ... 11 more

So this is the point I got stuck now :-(

#3 2011-03-03 10:02:48

blackfox
Member
Registered: 2011-03-01
Posts: 25

Re: JMS - Connection to WebSphere

I couldn't get further with this :-(

can someone say if it should be possible to put a JMS-message to a websphere jms-queue at all? I even don't know if my approach from post 2 is the correct one. If nobody has a hint for me, it seems I have to find a (ugly?) workaround :-(

Best regards,
blackfox


Devenvironment: TOS 4.2.0 on Windows XP SP3, Projecttype Java
Runenvironment: aix, job called by a jobscheduler

Offline

#4 2011-03-17 10:56:11

blackfox
Member
Registered: 2011-03-01
Posts: 25

Re: JMS - Connection to WebSphere

Today I found some time to give this a last try - and I solved it :-)

For all others who may find this having the same problem, here is what I had to do
- you have to load lots of librarys, in my case eight
  - com.ibm.ws.emf_2.1.0.jar
  - com.ibm.ws.runtime_6.1.0.jar
  - com.ibm.ws.sib.server_2.0.0.jar
  - com.ibm.ws.sib.utils_2.0.0.jar
  - com.ibm.ws.wccm_6.1.0.jar
  - com.ibm.ws.webservices.thinclient_6.1.0.jar
  - ibmorb.jar
  - iwsorbutil.jar
- load some properties like "org.omg.CORBA.ORBClass=com.ibm.CORBA.iiop.ORB" ==> put it in a file, e.g. "orb.properties" and load it with a tLibraryLoad
- tJMSOutput:
  - ContextProvider: "com.ibm.websphere.naming.WsnInitialContextFactory"
  - server url: "corbaloc:iiop:localhost" - (replace host)
  - connection factory jndi name: this tells his own tale - the jndi name of the queueconnectionfactory
  - to: the queuename. Attention: not the jndi-queuename but the connection-queuename - have a closer look to the configuration of the queue in the was adminconsole for it

so - this works, but one little question:
Is it possible to load a bunch of librarys in any way? (using one component for all of them or setting classpath or something like this) The job looks a bit confusing with all this tLibraryLoads...

-- Edit --
moved this question and another to a new topic [Forum, topic 14746] handling libraries

Last edited by blackfox (2011-03-17 13:19:14)


Devenvironment: TOS 4.2.0 on Windows XP SP3, Projecttype Java
Runenvironment: aix, job called by a jobscheduler

Offline

#5 2012-06-27 16:24:17

RichardS
Member
Registered: 2010-06-22
Posts: 10

Re: JMS - Connection to WebSphere

i added

"com.ibm.jaxws.thinclient_7.0.0.jar"
"com.ibm.ws.admin.client_7.0.0.jar"
"com.ibm.ws.jpa.thinclient_7.0.0.jar"
"com.ibm.ws.orb_7.0.0.jar"
"com.ibm.ws.messagingClient.jar"
"com.ibm.ws.webservices.thinclient_7.0.0.jar"
"com.ibm.ws.ejb.thinclient_7.0.0.jar"
"iwsorbutil.jar"

and follwed the instruction above (last post), so connection works...
but i got this error:

"Exception in component tJMSOutput_1
java.lang.ClassCastException: com.ibm.ws.sib.api.jms.impl.JmsQueueImpl cannot be cast to javax.jms.ConnectionFactory"

any suggestions ?

Richard

Offline

  • Index
  •  » Talend Open Studio for Data Integration » Usage, Operation
  •  » JMS - Connection to WebSphere

Board footer

Powered by FluxBB