一尘不染

Tomcat-以特定顺序启动WebApp

tomcat

我知道Tomcat和Servlet规范不支持按特定顺序启动webapps。

但是,在我看来,这似乎是一个常见的用例,我想知道是否有人找到了一种聪明的解决方法。

我有一个webapp A,它使用Spring Remoting公开一个共享服务,其中webapp B是一个客户端。除非正在运行Webapp
A,否则Webapp B无法初始化。但是,我的Tomcat始终以webapp B开头线性启动webapps。

出于基础结构原因,我必须将它们运行在同一台Tomcat服务器上。

有任何想法吗?

谢谢罗伊

更新 -

事实证明,在我的特定情况下,顺序并不重要。原因是:说我使用以下方法之一在应用B之前启动应用A。所以应用A启动了,但是,由于Spring
Remoting使用的是HTTP Invoker,因此HTTP端口尚未打开(无法打开)直到 所有
应用启动)。因此,A将启动,而B将挂起,因为它正在寻找的端口尚不可用。h

最终结果是两个单独的Tomcat实例。


阅读 693

收藏
2020-06-16

共1个答案

一尘不染

我们有同样的问题,要解决这个问题,我们要依靠一个事实(我知道是很滑的),即应用程序是按照在中定义的顺序启动的<tomcat_home>/conf/server.xml

当然,这在应用程序中对应用程序进行硬编码有一个缺点,server.xml但我们可以接受。

2020-06-16