File APIs for Java Developers
Manipulate DOC, XLS, PPT, PDF and many others from your application.
http://aspose.com/file-tools
Win a copy of Clojure in Action this week in the Clojure forum!
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic

Getting 2 phase commit exception with SQL server and DB2 datasources....

 
Nisha Durga
Greenhorn
Posts: 2
  • 0
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hi, I am using 2 datasources. one for SQL server(XA datasource)and another for DB2(not an XA).

In the particular transaction, our code gets nearly 3 connections using getConnection of XA datasource and 2 connections using DB2 datasource. Getting the following exception when the transaction is about to commit: "An illegal attempt to commit a one phase capable resource with existing two phase capable resources has occurred." Is it required to close all connections before committing?

Could you pls help me out of this problem soon??? Thanks in advance.
 
Ulf Dittmer
Rancher
Pie
Posts: 42966
73
  • 0
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Welcome to JavaRanch.

What does "nearly 3 connections" mean? 2? 3? Why does the code get more than one connection per datasource inside of a single transaction?

Is it required to close all connections before committing?

If a connection is closed, all pending transactions are rolled back - probably not what you want.

It sounds as if the code is trying to use an XA transaction with a non-XA capable datasource. Can the code get an XA-capable connection for DB2 as well?
 
I agree. Here's the link: http://aspose.com/file-tools
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic