在行处理JSP页面/customerLogin.jsp时发生异常

时间:2014-09-20 14:07:17

标签: java string jsp

我试图在登录屏幕中打印登录错误消息。

<%   
   errorMessage = request.getParameter("errorMessage"); 
    if(errorMessage.equals(null))
     errorMessage = "Error: " +request.getParameter("errorMessage");
       else
        errorMessage="";
  out.println(errorMessage);

   %>

Intitally此request.getParameter不会返回任何值。因此它将返回null。但是一旦用户输入用户名密码并提交,它将返回错误消息。

我收到以下错误:

org.apache.jasper.JasperException: An exception occurred processing JSP page /customerLogin.jsp at line 18

15:   errorMessage = request.getParameter("errorMessage"); 
16:     
17:         
18:   out.println(errorMessage.toString().equals(null));
19:             
20:  %>
21:  

1 个答案:

答案 0 :(得分:0)

就像你的stackstrace指出的那样。

org.apache.jasper.JasperException: An exception occurred processing JSP page /customerLogin.jsp at line 18

 out.println(errorMessage.toString().equals(null));

您不应该使用equals方法来检查null对象。永远记得
==检查对象引用相等性,而.equals()检查值相等性。

相反。

if(errorMessage.equals(null))

使用

if(errorMessage == null)

或者如果你期望空字符串而不是null,则使用.equals()。

if(errorMessage.toString().equals(""))