如何在JBoss上与其他Web应用程序一起部署Java独立应用程序

时间:2019-04-21 13:07:55

标签: java jboss jms

我正在编写一个Java程序,它将继续侦听JMS / ActiveMQ队列中的任何消息。当队列上有消息发布时,此程序将提取该消息并进行处理。该程序具有main()方法。现在,我想在JBoss / Wildfly中部署该程序。 JBoss上已经部署了一些Web应用程序。我也想在JBoss上部署该程序,以避免手动启动。每当JBoss服务器启动时,该程序也应该运行并侦听队列。

如果无法使用主要方法,我需要有关此要求的替代解决方案的一些建议。

2 个答案:

答案 0 :(得分:0)

您应该使用消息驱动Bean(MDB)。 This教程现在有点旧了,但对您来说仍然不熟悉。

答案 1 :(得分:0)

在应用程序服务器中,您无法运行Java应用程序。您必须将Web应用程序部署在战争中。

您可以做什么:

1)在Web应用程序中转换Java独立应用程序并定义一个servlet。该servlet将开始您的过程。因此,在这种情况下,服务器启动时,它将部署您的程序包(war或ear),初始化servlet,然后启动进程。 2)使用调度程序(Linux石英)在Web应用程序中转换Java独立应用程序以启动您的过程。这比第一种方法更好,因为您不必创建服务端。

PS:通常,当您必须运行Java独立应用程序时,我们会使用其他服务来完成此工作(如Linux中的Control-M或cron选项卡)