|
RSS Feed - WebSphere MQ Support
|
RSS Feed - Message Broker Support
|
 |
|
Oracle Data Integrator and MQ |
« View previous topic :: View next topic » |
Author |
Message
|
pete91z |
Posted: Mon Mar 18, 2013 12:48 am Post subject: Oracle Data Integrator and MQ |
|
|
Newbie
Joined: 18 Mar 2013 Posts: 2
|
Hi,
I am fairly new to the world of Websphere, and am trying to connect ODI to MQ using JMS and JNDI. I've been struggling to get the the connection working, and just wondered if anyone here had any advice?
my set up is:
Linux machine running ODI Studio and Oracle DB (LINUX1). I have installed the MQ client/runtime rpms
Windows 2008 Server running Websphere MQ 7.5 (WINAPP)
Windows 2008 server running AD (WINDC)
I have created two queue managers, one which uses LDAP for JNDI and one which uses file based JNDI.
I have been able to create the JNDI elements in AD, and I can see these when I browse AD.
I have successfully used IVTRun in client mode to connect to the queue using nojndi from both LINUX1 and WINAPP. Similarly, I have been able to use IVTRun from WINAPP to connect using LDAP and to a file based JNDI. When I run IVTRun -url from LINUX1, it is able to connect to the JNDI, but fails when connecting to the queue (I think it is looking for the queue on localhost) so as far as I can tell, this is successfully establishing a connection to the JNDI and the Connection Factory (I had to temporarily enable anonymous bind for it to work).
I have also successfully tested using the amqsputc and getc utils from LINUX1.
I have tried to set up a JMS XML Queue data server in ODI using the following parameters:
JNDI Authentication : Simple
JNDI User : DN=MyUser,OU=MyOu,DC=domain,DC=com
Password: <password>
JNDI Protocol: LDAP
JNDI Driver: com.sun.jndi.ldap.ldapctxfactory
JNDI URL: windc:389.....
JNDI Resource: MyLdapCF
However, when attempting to test the connection I get the error below.
I have checked in the WINDC event logs and can see a succesful connection being made using the JNDI user.
I have installed the MQ Client on the Linux machine and copied over the jar files to the ODI drivers and library directories as per instructions. I have also copied these to the drivers directory of the agents.
I have tried installing an ODI agent on the WINAPP server and registering the jar files and tried using the file based JNDI, but this also fails.
Does anyone have any thoughts on what might be going wrong, or any steps I might've missed?
The ODI error is as follows:
java.sql.SQLException: Cannot load connection class because of underlying
exception: 'java.sql.SQLException: Cannot load connection class because of
underlying exception.'.
at
oracle.odi.jdbc.datasource.LoginTimeoutDatasourceAdapter.doGetConnection(LoginTimeoutDatasourceAdapter.java:133)
at
oracle.odi.jdbc.datasource.LoginTimeoutDatasourceAdapter.getConnection(LoginTimeoutDatasourceAdapter.java:62)
(truncated)
I've had a look on the Oracle and IBM forums, but not found anything that works yet. Unfortunately, the Oracle error isn't particularly descriptive. Any advice or thoughts would be greatly appreciated.
Kind regards,
Pete |
|
Back to top |
|
 |
pete91z |
Posted: Fri Apr 19, 2013 4:56 am Post subject: |
|
|
Newbie
Joined: 18 Mar 2013 Posts: 2
|
As a followup, I tested connectivity using a Jython Script from Oracle Support.
I can now the see following errors during connection:
>>> import testIBMMQ75_filebased
*** Using provider url file:/D:\JMSJNDI
*** Connected to JNDI
*** Lookup JNDI : début
*** JNDI : Queue Connection Factory retrieved
*** JNDI : Queue retrieved
*** Lookup JNDI : fin
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "testIBMMQ75_filebased.py", line 69, in <module>
conn = qcf.createQueueConnection()
AttributeError: 'com.ibm.mq.jms.MQConnectionFactory' object has no attribute 'createQueueConnection'
>>>
>>>
>>> import testIBMMQ75_ldap
*** Using provider url ldap://WINDC/OU=MyOu,DC=domain,DC=com
*** Connected to JNDI
*** Lookup JNDI : début
*** JNDI : Queue Connection Factory retrieved
*** JNDI : Queue retrieved
*** Lookup JNDI : fin
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "testIBMMQ75.py", line 69, in <module>
conn = qcf.createQueueConnection()
AttributeError: 'com.ibm.mq.jms.MQConnectionFactory' object has no attribute 'createQueueConnection'
So it looks like both file based and ldap are making a connection, but com.ibm.mq.jms.MQConnectionFactory appears to be throwing an error. Has anyone seen this, or know why this might be failing? Having fudged my way through some of the documentation, this should be a valid method. |
|
Back to top |
|
 |
fjb_saper |
Posted: Fri Apr 19, 2013 8:41 pm Post subject: |
|
|
 Grand High Poobah
Joined: 18 Nov 2003 Posts: 20756 Location: LI,NY
|
It looks like you are retrieving the connection factory class but you did not set up a connection factory i.e. there are no attributes defined to the connection factory....
Have fun  _________________ MQ & Broker admin |
|
Back to top |
|
 |
|
|
 |
|
Page 1 of 1 |
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
|
|
|