Hey all,
I also got this error when using the TransactionManager, which is about the
same as the UserTransaction.
The problem was that I was using the the TM while it was still busy with
another transaction, you have to check the status of the TM first. heres how I
fixed it.
| EntityManager EM = EMF.createEntityManager();
| TransactionManager TM =
(TransactionManager)ctx.lookup("java:TransactionManager");
| boolean suspended = false;
| Transaction t = null;
|
| if(TM.getStatus() == Status.STATUS_NO_TRANSACTION || TM.getStatus() ==
Status.STATUS_UNKNOWN)
| {
| TM.begin();
| EM.joinTransaction();
| }
| if(TM.getStatus() == Status.STATUS_ACTIVE)
| {
| suspended = true;
| t = TM.suspend();
| TM.begin();
| EM.joinTransaction();
| }
| else
| {
| throw new Exception("Transaction status invalid: "+TM.getStatus());
|
| }
|
| //Do Actual Work with DB
|
| EM.persist(Entity);
| EM.flush();
| TM.commit();
|
| if(suspended == true)
| {
| TM.resume(t);
| }
|
| TM = null;
| EM = null;
|
|
View the original post :
http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4195868#4195868
Reply to the post :
http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4195868
_______________________________________________
jboss-user mailing list
[email protected]
https://lists.jboss.org/mailman/listinfo/jboss-user