【问题标题】:How can I alert message in Servlet code and sendredirect to JSP page?如何在 Servlet 代码中提醒消息并发送重定向到 JSP 页面?
【发布时间】:2012-02-24 07:35:35
【问题描述】:

我正在尝试使用 JSP、带有 MVC 概念的 servlet 和数据访问对象 (DAO) 来制作一个简单的登录页面来处理数据库,而我是这方面的新手。我现在的问题是,如果用户输入无效的名称和密码并再次发送重定向到 login.jsp 页面,我需要在 servlet 中提醒一个框消息。如果用户有效,我将标志设置为 1 然后执行此 if-check

if(validUserFlage == 1)
    response.sendRedirect("User_Manipulation_Interface.jsp");
else {   
    //Here i want to alert message cause user invalid ??
    response.sendRedirect("Admin_And_User_Login_Form.jsp");
}

搜索这个我找到了这个答案,但我不明白我该怎么做 我找到的答案: ((使用发送重定向,您无法在代码中显示您想要的消息。因此,根据我的说法,可能有两种方法。在此处显示一条消息并使用 requestdispatcher 的 include 而不是发送重定向,或者将一些消息传递给 admin.jsp 和在那里显示消息。))

【问题讨论】:

标签: java jsp servlets


【解决方案1】:

这样设置标志参数,

 response.sendRedirect("Admin_And_User_Login_Form.jsp?invalid=true");

在jsp上

<c:if test=${invalid eq 'true'}">invalid credentials</c:if>

【讨论】:

  • 好的,但是在 jsp 页面中我试图获取 URL 中发送的值 invalid = request.getParameter("invalid");现在我想检查无效是真还是假,如果它是假的,那么用javascript发出警报消息,例如告诉用户他的输入无效真的我是jsp的新手,我无法理解你回答的最后一行可能你用更简单的方式帮助我!
  • 在加载后检查该字段是否包含 true 然后警报
【解决方案2】:

您可以在servlet 页面中设置errormsg 等参数并将其添加到ri-direct 对象中。然后您可以检查该变量errormsg,如果它为null,则用户名正确,否则用户名不正确..

在 Servlet 代码中:
if(username.equal(databaseusername))

{
RequestDispatcher rd = request.getRequestDispatcher("NextPage.jsp");

req.setAttribute("errormsg", "");

rd.forward(request, response);  

}

else

{

RequestDispatcher rd = request.getRequestDispatcher("login.jsp");

req.setAttribute("errormsg", "Wrong Username or Password");

rd.forward(request, response);  

}

在 JSP 代码中:

<%

String msg=req.getAttribute("errormsg").toString();

if(!msg.equals(""))

{

// Print here the value of Msg.

}


%>

【讨论】:

    【解决方案3】:
    In servlet
        String strExpired = (String) session.getAttribute("Login_Expired");
    response.sendRedirect("jsp/page.jsp");
    
    In jsp 
    <%
    String strExpired = (String) session.getAttribute("Login_Expired");
    out.print("alert('Password expired, please update your password..');");
    
    %>
    

    【讨论】:

      猜你喜欢
      • 2012-11-17
      • 1970-01-01
      • 2015-07-24
      • 1970-01-01
      • 1970-01-01
      • 2011-08-28
      • 1970-01-01
      • 2012-12-30
      • 1970-01-01
      相关资源
      最近更新 更多