【发布时间】:2017-05-30 23:53:15
【问题描述】:
我有一个通过包 jar (ServletA) 提供的 servlet,它依赖于 ServletB 从数据库加载的参数。我遇到的问题是 Jboss 似乎为 servlet 的初始化生成了单独的线程。虽然在日志中我可以看到由 load-on-startup 定义的顺序是正确的,但似乎 ServletB 读取数据库属性所花费的时间导致 ServletA 失败,因为它的初始化启动并且自 ServletB 以来无法获取属性还在忙。
ServletA 是一个单例,它的初始化运行一次,如果失败,则无法恢复。我无法控制 ServletA,因此无法更改此行为。
在 web.xml 或 Jboss (wildfly) 中是否有定义 servlet 启动依赖项的设置?我试图找到一种方法让 ServletA 在初始化之前等待 ServletB 的 init() 完成。
【问题讨论】: