【发布时间】:2014-06-19 07:40:18
【问题描述】:
我有一个 servlet,它在服务器启动时加载 <load-on-startup>1</load-on-startup>,在 servlet 的 init() 方法中,我正在从属性文件中检查一些参数。如果参数不存在,我想阻止整个上下文初始化。
public void init(){
Readproperty pr = new ReadProperty();
if(!pr.parameterExists()){
//Edit:
throw new UnavailableException("Testing Stopping Context")
}
}
最好的方法是什么?我现在确实想将此代码移动到我的上下文侦听器类中,因此我正在寻找从 `init()' 方法中执行此操作的最佳方法。
【问题讨论】:
-
您可以抛出 RuntimeException,例如 IllegalStateException。
-
我也想过这个,但无法分析与
javax.servlet.UnavailableException的含义或差异。有没有办法调用上下文销毁? -
嗯,你是对的,
init()被允许抛出一个 ServletException,所以最好抛出一个 UnavailableException。 -
上下文仍在开始看我编辑的答案。
-
如果抛出 IllegalStateException 怎么办?
标签: java servlets servletcontextlistener