0

我想在 servlet 重定向到的 jsp 页面中显示错误消息,例如 SQLException 错误。我是 java 和 JSP 的新手,但我已经设法获得了一些基本的东西,比如使用 servlet 将数据保存到工作的数据库中。下面是我捕获遇到的错误的代码

 catch(SQLException e){
         out.println("SQL Error encountered "+e.getMessage()); 

如何将此错误捕获到已由 servlet 使用 jstl 或表达式语言重定向到的 jsp 页面中?例如,如果管理员从名为 createuser.jsp 的页面提交了重复的电子邮件地址,则该错误应显示在 creatuser.jsp

4

2 回答 2

1

您永远不应该在前端发布与异常相关的材料,因为这可以提供有关您的内部结构和底层架构的信息,这绝不是一个好主意,因为它可能导致可能的攻击。

您可以做的是进行某种形式的验证,如此处所示,并且在您的情况下,您无需显示异常消息,而只需检查名称,如果它抛出异常,只需显示一条消息在屏幕上是这样的:User Already Exists!。对于非技术人员来说,诸如此类的错误消息通常也不那么令人困惑。

于 2012-05-07T11:56:10.017 回答
0

您可以将消息添加为请求的属性:

小服务程序:

catch(SQLException e) {
    request.setAttribute("exception", "SQL error encountered");
}

jsp:

${exception}
于 2012-05-07T11:58:47.953 回答