首页 > 解决方案 > 在jsp中显示错误登录消息

问题描述

如果用户进行了无效登录,我正在尝试在我的 index.jsp 页面中显示错误消息。

这是我的servlet代码:

if( passwordService.authenticate(password, attemptedPassword, salt)){


        User user = LogicFacade.login(email, password);

        HttpSession session = request.getSession();
        session.setAttribute("user", user);
        session.setAttribute("role", user.getRole());

        return user.getRole() + "page";  // i return the name of the jsp page, to get to the next jsp page

    }else{

    //here I make the error message I want to show
        String errorMessage ="The retrived password or username did not match";
        request.setAttribute("errorMessage", errorMessage );
           RequestDispatcher rd = request.getRequestDispatcher("/index.jsp");
                rd.forward(request, response);  
    }

}       catch (SQLException | NoSuchAlgorithmException | InvalidKeySpecException | ServletException | IOException ex) {
        Logger.getLogger(Login.class.getName()).log(Level.SEVERE, null, ex);
    }
    return null;

}
}

这里我在我的jsp中显示它:

 <%
if(null!=request.getAttribute("errorMessage"))
{
    out.println(request.getAttribute("errorMessage"));
    out.println("<p> Error!! </p>");
    //ved godt det ikke er super smart at printe paragraph tags med ud
}

 %>

为什么消息不显示?

标签: javajspservletsweb

解决方案


试试这个可能会解决你的问题

   if(!request.getAttribute("hello").equals(null))

推荐阅读