weblogic 下如何配置 JTA事务管理??

2024-11-29 01:50:39
推荐回答(1个)
回答1:

你在 weblogic 上其实没有什么需要配置的。

你在 ejb-jar.xml 里面指定某个 EJB 的 Assembly 配置信息。比如为某个 EJB 或它的某个 business 方法指定 transaction 为 Required 或 RequiresNew 之类的。把这个 EJB jar 部署到 weblogic 之后会就行了。

如果你是在自己管理事务,那就自己 new InitialContext().lookup() 找到 UserTransaction 来使用它。

InitialContext ctx = new InitialContext();
UserTransaction utx = (UserTransaction) ctx.lookup(";java:comp/UserTransaction";);
DataSource ds = ctx.lookup("jdbc/myDS");

utx.begin();
Connection conn = null;
try {
conn = ds.getConnection();

// JDBC 操作.
utx.commit();
} catch (Throwable e) {
try { utx.rollback(); } catch (Exception e2) {/* 不要抛出 事务相关的 Exception了*/}
} finally {

if (conn != null) {
conn.close(); // 这里不要再抛出 SQLException。
}
}