把执行SQL的方法的事务设置为ReqiredNew。

解决方案 »

  1.   

    to  hq1305018(跃强) :
      没有效果
      

  2.   

    你的处理数据库的方法是不是被另一个在SessionBean中的方法调用?
    还是被SessionBean外的方法直接调用?
      

  3.   

    是在一个javabean里调用sessionbean的该方法的
      

  4.   

    执行sql时捕捉到异常后执行:sessionContext.setRollbackOnly();
    这个肯定行
      

  5.   

    配合容器管理的事务
    <container-transaction>
                <method>
                    <description />
                    <ejb-name>SQLDirect</ejb-name>
                    <method-name>*</method-name>
                </method>
                <trans-attribute>Required</trans-attribute>
    </container-transaction>