EJB3中是否有允许我在事务提交后执行某些代码的东西(我想发送XMPP消息以通知外部设备进行更新)?
我知道我可以使用JTA API执行类似的操作,并且可以使用我自己编写的XA资源,但我觉得这不是正确的工具。
THX
答案 0 :(得分:3)
创建一个实现javax.ejb.SessionSynchronization的有状态会话bean,并从事务中调用一个方法。将使用事务的结果调用afterCompletion方法。
更新:如果您使用的是EJB 3.1,则可以使用@AfterCompletion注释SFSB的方法,而不是实现接口。