我正在尝试从我的应用程序服务器(Glassfish 3.1.2)
中执行子进程因此我发现了Apache Commons Exec库。问题是这个库创建的线程不应该在应用服务器上完成,因为服务器不知道这些线程 什么可以解决这个问题?
是否可以创建一个用Java SE编写的消息组件,它使用包含待处理作业信息的消息并将其注册到应用程序服务器?
然后,应用程序服务器不必处理运行时异常和线程,只需使用包含结果或异常的消息。
你有更好的想法吗?
答案 0 :(得分:4)
您可以使用:
实际上,它应该提供与普通子流程类似的功能。
使用与Java EE通信的Java SE组件只是为了克服自己使用的线程听起来有点像矫枉过正。只需阅读所提及的解决方案,并尝试其中任何一个满足您的需求。
答案 1 :(得分:0)
消息驱动bean是为异步处理而设计的。它可以解决您的问题。您可以创建一个单独的侦听器线程池,以处理流量。