【发布时间】:2014-05-23 06:10:48
【问题描述】:
我正在处理我的一项任务。这是相当直截了当的。将包含单个输入的 HTML 表单提交给 Servlet,该 Servlet 获取参数,根据参数创建消息,将消息作为属性添加到请求中,并使用 requestdispatcher 转发到 jsp 以显示消息。
我有个需求,如果参数缺失,需要显示错误页面。问题是我不能明确地检查空值,或者使用 try/catch 块。我的猜测是目标是在 web.xml 页面中定义一个错误页面来处理某种类型的错误,但问题是,如果我无法检查请求参数是否为空,或者使用 try/catch ,我怎么知道我是否需要抛出异常?有什么想法吗?
【问题讨论】:
-
阅读 servlet 异常处理程序以及如何将异常映射到这些处理程序。
-
根据我的阅读,通常的做法是让 servlet 抛出某种异常,并允许容器处理它。问题是,如果我无法检查 null 或使用 try/catch,我不知道是否/何时抛出异常。
-
只需将异常添加到处理您的请求的方法的签名中即可。
-
但问题是我不知道是否应该抛出它,因为我无法检查参数是否为空或使用 try/catch。所有的工作都在 doGet() 中完成。
-
啊,我以为其他东西已经抛出了异常,你想知道如何处理它。