I am currently developing an application which requires database XA transactions in order to make use of a JTA Transaction Manager. Although I am using the latest Oracle thin driver, which is supposed to support native XA by default (see this page) I still can't get my data inserts to stick once the XA transaction has been committed. There is no exception thrown, I just never see the new data row in the table.
This application works as expected when I use a PostrgreSQL database. So I assume that the problem is either with the Oracle driver (maybe I'm not actually using the thin driver that I think I am), or with the Oracle database configuration itself.
Am I mistaken thinking that I'm using the thin Oracle driver rather than the OCI or KPRB drivers by having ":thin:" included in the JDBC URL (my JDBC URL is "jdbcracle:thin:@dev.mycom.com:1521:TESTDB")?
Is it possible that the Oracle database could be configured in such a way that XA is disabled? If so then what settings would I check to confirm that this is the case?
Thanks in advance for any ideas/suggestions etc.
posted 8 years ago
It appears that distributed (XA) transactions aren't enabled in Oracle by default, which is what caused this problem.