Win a copy of Programmer's Guide to Java SE 8 Oracle Certified Associate (OCA) this week in the OCAJP forum!
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic

Problem:(Urgent ) 2 Phase Commit by WebSphere on Oracle database and MQ Series

 
himanshush sharma
Greenhorn
Posts: 2
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
I am using WebSphere 3.5.4 and need to implement two phase commit over MQ Series and Oracle DB. I am using MQ Series 5.2 Server and Oracle 9i.
The Database and MQ Series reside on seperate boxes. WebSphere and MQ Series reside on same box. I am using Oracle provided thin Type 4 JDBC Driver (9.0.1 shipped with Oracle 9i) with JTA Enabled parameter as True. I am using latest version of MA88 Support Pac for JMS/JTA.
I have an EJB which makes a JMS call and writes a message on Queue using (WebSphere Queue Connection Factory)
and another EJB to insert a record in DB. (Auto Commit false)
Bean Transaction Attributes for both EJBs (TX_REQUIRED) ,
Using Declarative Transaction. The DB EJB invokes the JMS EJB in a transaction.
I am able to commit and rollback from both MQ and Oracle in a Transactional mode but, whenever I start up the Application Server I get an error
JTSXA W Can not create XAResource object
[02.10.15 15:00:15:039 GMT+05:30] cf8c2691 OraJTAXAResou W Encountered an error while creating XA connection and XA resource java.sql.SQLException: No suitable driver
at java.sql.SQLException.<init>(SQLException.java:66)
at java.sql.DriverManager.getConnection(DriverManager.java:479)
at java.sql.DriverManager.getConnection(DriverManager.java:139)
at oracle.jdbc.pool.OracleDataSource.getConnection(OracleDataSource.java:116)
at oracle.jdbc.pool.OracleConnectionPoolDataSource.getPhysicalConnection(OracleConnectionPoolDataSource.java:107)
at oracle.jdbc.xa.client.OracleXADataSource.getXAConnection(OracleXADataSource.java:211)
at com.ibm.ejs.jts.jta.factory.OraJTAXAResourceFactory.getXAResource(OraJTAXAResourceFactory.java:71)
at com.ibm.ejs.jts.jta.JTSXA.recover(JTSXA.java(Compiled Code))
at com.ibm.ejs.jts.jta.recovery.XARecoveryManager.xaRestartRecovery(XARecoveryManager.java:225)
at com.ibm.ejs.jts.jta.recovery.XARecoveryManager.duringRestart(XARecoveryManager.java:210)
at com.ibm.ejs.jts.tran.Tran.ready(Tran.java:193)
at com.ibm.ejs.jts.jts.CurrentSet.ready(CurrentSet.java:159)
at com.ibm.ejs.jts.jts.Jts.ready(Jts.java:132)
at com.ibm.ejs.sm.server.ManagedServer.initializeTran(ManagedServer.java:937)
at com.ibm.ejs.sm.server.ManagedServer.initializeRuntime(ManagedServer.java:574)
at com.ibm.ejs.sm.server.ManagedServer.main(ManagedServer.java:140)
I am not able to determine
1) Why do I get the above error? Is WebSphere using a different JDBC2.0/JTA Specification due to which it finds the Oracle Driver incompatible.
2) Is WebSphere in above scenario supporing the XA Transactions with JTA enabled Oracle Thin Driver?
I would really appreciate if someone could help me out.
 
Kyle Brown
author
Ranch Hand
Posts: 3892
5
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
WebSphere 3.5.4 does not support Oracle 9i. See the list of supported software and drivers on this page.
Kyle
 
himanshush sharma
Greenhorn
Posts: 2
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hi Kyle
I tried using the 8.1.7 Driver available on Oracle Site with the 9i Patch to Connect to 9i Server, it gives me the same error.
I read about using the 8.1.7 Driver from
http://www-3.ibm.com/software/webservers/appserv/doc/v40/ae/infocenter/was/06061405.html
Do I need to connect only to 8.1.7 Oracle Server through the 8.1.7 Thin Type 4 Driver?
 
Kyle Brown
author
Ranch Hand
Posts: 3892
5
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Yes! We state quite clearly on that page that Oracle 9i is NOT a supported database at all in WebSphere 3.5. You can *only* use Oracle 8.1.7.
Kyle
 
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic