ServletContextListener中的异常及其影响

时间:2012-12-27 16:26:27

标签: java-ee servlets

在我们的Web应用程序中,我们需要Web服务列表中的一些信息。获得该信息后,我们将其放入Application Context。我们使用ServletContextListener在应用程序启动时调用这些Web服务。

我们假设由于某种原因导致网络服务中断,ServletContextListner提供了一些ConnectionTimeOutException

这是否会影响应用程序中所有servlet的初始化?

保持这个的最佳位置是哪个? ServletServletContextListener?我们可以将此信息放在servlet的init()方法中,并将load-startup-value设置为正数。

你可以告诉我吗?

1 个答案:

答案 0 :(得分:1)

这似乎不是最强大的解决方案。您正在建立一个启动依赖项到您的服务中心。我认为你最好将这个初始化构建到应用程序中,以便在启动时不必成功(甚至运行?),并且会优雅地失败。

理想情况下,您应该能够重试该初始化请求(可能是lazt实例化和/或通过用户请求),这样您的服务就是面向恢复的,并且可以在下游失败时保留一些功能。