Hi,
I figured out the issue. It was a combination of setting the
SetAutoCommitAllowed, DefaultCommitAllowed properties correctly. Also I had
assumed that DaoManagerBuilder.buildDaoManager will return the same instance
of Daomanager always ( like a singleton ). So I was creating the dao in my
constructor, then for the transaction, building another daomanager. That
turned out not tobe true. Once I used the same instance of daomanager,
things worked fine.
Thx
-- pady
----- Original Message -----
From: "Comcast Mail" <[EMAIL PROTECTED]>
To: <[email protected]>
Sent: Friday, November 21, 2008 1:35 PM
Subject: Re: Beginner question on transactions...
The tables were created with Engine=InnoDB
mysql 5.0.27
Thx
-- pady
----- Original Message -----
From: "Poitras Christian" <[EMAIL PROTECTED]>
To: <[email protected]>
Sent: Friday, November 21, 2008 1:12 PM
Subject: RE: Beginner question on transactions...
Are your tables in InnoDB or MyISAM?
InnoDB tables are required in MySQL to support transactions.
Christian
-----Original Message-----
From: Comcast Mail [mailto:[EMAIL PROTECTED]
Sent: Friday, November 21, 2008 1:04 PM
To: [email protected]
Subject: Beginner question on transactions...
Hi.
I have code that does the following:
try {
DaoManager.startTransaction();
// loop and do some inserts
...
DaoManager.commitTransaction();
} catch ( Exception ex ) {
...
} finally {
DaoManager.endTransaction();
}
One of the insert fails but the previous inserts have been committed.
Although the commitTransaction is never reached.
here is my transaction block from sqlmapconfig.xml ( pointing to mysql
database )...
<transactionManager type="JDBC" commitRequired="true">
<dataSource type="SIMPLE">
<property name="JDBC.Driver" value="com.mysql.jdbc.Driver"/>
<property name="JDBC.ConnectionURL" value="jdbc:mysql://localhost/test"/>
<property name="JDBC.Username" value="..."/>
<property name="JDBC.Password" value="..."/>
<property name="DefaultAutoCommit" value="false"/>
<property name="SetAutoCommitAllowed" value="false"/>
</dataSource>
</transactionManager>
Any ideas. Help appreciated.
Thanks
-- pady