Java EJB应用程序启动时是否引发任何事件?

Java EJB应用程序启动时是否引发任何事件?,java,events,jakarta-ee,ejb,Java,Events,Jakarta Ee,Ejb,我们正在考虑构建一个客户机/服务器应用程序,其中服务器端将是一个EAR应用程序,其中一些会话bean公开了API。 我们想知道EJB模块中的web模块是否有类似ServletContextListener的东西,这样我们就可以知道服务器端的应用程序何时启动 谢谢是预付款。我不知道。看 由于您有一个EAR,因此可以在JEE5中使用ServletContextListener,没有其他机制。ServletContextListener是最好的、可移植的解决方案 在JEE6中,可以使用单例EJB。您可

我们正在考虑构建一个客户机/服务器应用程序,其中服务器端将是一个EAR应用程序,其中一些会话bean公开了API。 我们想知道EJB模块中的web模块是否有类似ServletContextListener的东西,这样我们就可以知道服务器端的应用程序何时启动

谢谢是预付款。

我不知道。看


由于您有一个EAR,因此可以在JEE5中使用
ServletContextListener

,没有其他机制。ServletContextListener是最好的、可移植的解决方案


在JEE6中,可以使用单例EJB。您可以使用@Startup注释单例EJB,EJB将在应用程序启动时创建。因此,对于一个没有WAR组件的“纯EJB”应用程序,这将是实现这一点的机制。

Will Hartung基本上有正确的答案,但可能还有一小部分需要补充

一个EAR可能有多个EJB和Web模块。偶尔也需要知道哪一个先启动

通过使用EAR META-INF目录中的JavaEE6application.xml文件中的
true
,可以确定这一点

然后,列出的模块顺序决定启动顺序,并告诉您在启动第一个或最后一个模块时是否调用了特定的@startup注释单例