I've read half of the internet already and I am still not able to solve my problem.
I have a web application which contains a servelt. To this servlet, another company is sending xml data I need to parse and persist in database. In order to be able to persist any data in subclasses of the servlet, I need to begin usertransaction (injected, it is seam 2 application). When XML is big, I often run into long share locks errors (or even deadlocks) in my other application using same database tables.
So I need to change this one big transaction into several smaller in the subclasses (invoked from servlet or "deeper"), however nothing works.
Could anyone give just a hint? The only thing I could imagine is to use non-jta entity manager, but somehow I'm afraid of this solution.