我是重写EE中的SE应用程序的一部分。我们目前使用JBoss 7.1.3作为我们支持的应用程序服务器,但显然是为了便于携带而尽量减少AS特定的代码。以编程方式Java EE停止应用程序
我们的应用程序的一点背景......它接受来自系统(MDB/Webservice)的处理请求,并通过与许多其他系统接口来满足请求。系统处理审计是数据库驱动的。
现有应用程序中的当前功能是应用程序在数据库连接丢失的情况下关闭以防止未经审计的处理。所以,我一直在四处观察,看看是否有任何标准方式以便携方式重新创建此功能。我想我想知道是否有任何标准方式从应用程序本身编程地停止应用程序,或者如果您有任何关于提供类似功能的想法。
到目前为止,我已经看到可能有方法通过JMX挂钩到JBoss并取消部署应用程序或可能停止MDB交付......但是我担心可移植性,因为它们都是特定于AS的。我不仅关心跨AS的可移植性,甚至跨越不同版本的AS ......因为这些操作的流程似乎已经在不同的JBoss发行版中发生了变化。
感谢您的输入以及@Pradeep。本质上,我们的遗留应用程序处理这种情况归结为系统退出。我个人认为,我们不应该停止应用程序,但我们应该阻止关键处理,直到数据库再次可用。感谢您的反馈,并会在讨论中提出。 – Marc 2013-04-26 14:34:40
又增加了一个,并且好奇地想知道你最终做了什么,为什么? – tgkprog 2013-06-05 14:01:52
决定不采取任何措施停止应用程序。由于数据库故障应该在太迟之前终止事务,因此我们决定让它们适当地死亡。 – Marc 2013-11-26 17:36:26