Hi
I too expected the transaction manager should automatically get picked up by spring but I too have similar issues. I need to attached transaction manager to tx:annonation tag to make it work. I was using spring 3.1.1 jars.
I guess, first thing you need to confirm whether transaction manager is getting invoked or not and then perhaps you can check what is causing failure in rollback.
As Bill point it out correctly, if you are writing your database connection code then you need to set autocommit to false in your code before you do any transaction. You can refer to this
URL for more information.
Thanks