iBATIS always commits or rolls back transactions explicitly with commit() and rollback(). Clinton
IJust to spare someone's time I'd like to add that it is only true if 1. Threre were some insert/update/delete or procedure calls after startTransaction() OR 2. The forceCommit (commitRequired) property is set to true I.e. if, after startTransaction(), only select statements are executed and forceCommit is set to false, no commit is issued to the database even if you call commit in iBatis. I've lost couple of hours until Jeff explained that to me and I hope I got it right.