1 22 package org.jboss.test.recover.bean; 23 24 import javax.ejb.EJBException ; 25 import javax.transaction.RollbackException ; 26 import javax.transaction.SystemException ; 27 import javax.transaction.Transaction ; 28 import javax.transaction.TransactionManager ; 29 import javax.transaction.xa.XAResource ; 30 31 import org.jboss.logging.Logger; 32 import org.jboss.test.recover.interfaces.StatelessFoo; 33 import org.jboss.tm.recovery.Recoverable; 34 35 41 public class StatelessFooBean implements StatelessFoo 42 { 43 private static final Logger log = Logger.getLogger(StatelessFooBean.class); 44 45 private TransactionManager tm; 46 private Recoverable recoverable1; 47 private Recoverable recoverable2; 48 private Recoverable recoverable3; 49 50 public void setTransactionManager(TransactionManager tm) 51 { 52 this.tm = tm; 53 } 54 55 public void setRecoverable1(Recoverable recoverable1) 56 { 57 this.recoverable1 = recoverable1; 58 } 59 60 public void setRecoverable2(Recoverable recoverable2) 61 { 62 this.recoverable2 = recoverable2; 63 } 64 65 public void setRecoverable3(Recoverable recoverable3) 66 { 67 this.recoverable3 = recoverable3; 68 } 69 70 public void method() 71 { 72 log.info("method called"); 73 try 74 { 75 Transaction tx = tm.getTransaction(); 76 log.info("tx=" + tx); 77 78 XAResource xaRes1 = recoverable1.getResource(); 79 tx.enlistResource(xaRes1); 80 log.info("enlisted xaRes1=" + xaRes1); 81 XAResource xaRes2 = recoverable2.getResource(); 82 tx.enlistResource(xaRes2); 83 log.info("enlisted xaRes2=" + xaRes2); 84 XAResource xaRes3 = recoverable3.getResource(); 85 tx.enlistResource(xaRes3); 86 log.info("enlisted xaRes3=" + xaRes3); 87 } 88 catch (SystemException e) 89 { 90 log.info(e); 91 throw new EJBException (e); 92 } 93 catch (RollbackException e) 94 { 95 log.info(e); 96 throw new EJBException (e); 97 } 98 } 99 100 } 101 | Popular Tags |