使用JSTL或EL在JSP中显示servlet错误

时间:2012-05-07 11:45:58

标签: java jsp java-ee servlets jstl

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

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

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

2 个答案:

答案 0 :(得分:1)

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

您可以做的是进行某种形式验证,如here中所示,并且在您的情况下,您只需检查名称以及是否抛出,而不是显示异常消息例外,只需在屏幕上显示如下消息:User Already Exists!。诸如此类的错误消息通常也不会让非技术人员感到困惑。

答案 1 :(得分:0)

您可以将邮件添加为请求的属性:

的Servlet

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

JSP:

${exception}