浏览 717 次
|
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
|---|---|
| 作者 | 正文 |
|
时间:2007-10-17 关键字: xa
项目中要整个EJB,供别的系统调用
本来不是采用容器管理事务,采用bean管理事务,想提交就提交,想回滚就回滚, 但是这样会给调用方带来这样一个问题:如果调用方调用ejb并且处理成功,但是在调用方接下来处理中出现异常时就没有办法回滚 这个ejb的事务。 接下来就想采用容器管理,采用xa数据源,这样的话上面的问题就可以解决,但是另一个问题又出来,就是在这个提供的ejb中,我们想保存调用的日志记录:传送了哪些数据,处理出错报的异常是什么,成功日志。 这样的话,因为采用容器管理,一提交或回滚就会出错,所以就只能把事务交给调用方来提交或回滚,这样的话,我们如果处理出错了,调用方就会把事务回滚,一旦事务回滚,所有数据库操作就会回滚,这样我们原先想保存错误日志的功能就失效了。 所以目的是想:采用xa事务管理,而且又想增加日志,到底能否这样实现呢??? 。。。对于日志,只想保存到数据库中,不想采用文件保存。 声明:JavaEye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
|
|
| 返回顶楼 | |
|
时间:2007-10-18
根据个人经验,做一个LogEJB,这个EJB用BEAN管理的事物,也就是getUserTransaction,然后用他来作DB的操作,把他嵌入在你的容器管理的EJB中进行操作,相互事物之间不影响。
共同学习 |
|
| 返回顶楼 | |
|
时间:2007-10-18
kenees 写道 根据个人经验,做一个LogEJB,这个EJB用BEAN管理的事物,也就是getUserTransaction,然后用他来作DB的操作,把他嵌入在你的容器管理的EJB中进行操作,相互事物之间不影响。 这点倒是没有想到,
共同学习 非常感谢,我试完后再来回复下。 |
|
| 返回顶楼 | |
|
时间:2007-10-21
半夜花了些时间,用了两台机子,两台机子都装了websphere跟oracle,测试了下,
通过,上面方案可行,谢谢kenees 帮忙 |
|
| 返回顶楼 | |



