EJB可以由容器管理事务。可以自己如下:
public MySession implements SessionBean{
   public someMethod(){
     Context ct=new InitialContext();
     UserTransaction utx=
       (UserTransaction ) ct.lookup("java:comp/UserTransaction ");
     utx.begin();
     ...
     ejb1.method1();
     ejb1.method2();
     ejb2.method1();
     ...     utx.commit();
   }
}

解决方案 »

  1.   

    多谢,我还想问下,UserTransaction是JAVA哪个版本的?我在JDK1。2中没有找到有关UserTransaction的文档。若要回滚,是否需要在异常中设置。
      

  2.   

    UserTransaction代表的是你自己定义的EJB的名字,不是JAVA的API!
      

  3.   

    to:charmsea(邕江水) 
    在javax.transaction下是J2EE中的包,不过这都是接口,不同的EJB服务器用不同的方法实现了它,参看EJB服务器的文档!
    另外如果你要自己手动进行事务处理,那你的EJB一定要发布成BEAN管理的事务模型!
      

  4.   

    OK,多谢各位帮助,我已经查找到javax.transaction.UserTransaction的相关资料。但我现在还没弄懂,没能做出来。我还发现了与事务有关的接口,如_session.setRollBackOnly()等,看来我还有很多事情要做。
        各位能留下各自的EMAIL吗,以便交流,多谢!
        [email protected]