繁体   English   中英

将数据从jsp传递到servlet返回null

[英]passing data from jsp to servlet return null

我的讲师登录表格有问题。 这是我的演讲者登录表单(JSP文件),与管理员登录表单(index.jsp)结合在一起:

<div class="form">
    <div class="thumbnail"><img src="images/schedule_icon.png"/></div>
    <form action="lecturerLogin" class="register-form">
        <input type="text" name="lecturerID" placeholder="Lecturer ID"/>
        <input type="password" name="lecturerPassword" placeholder="Password"/>
        <button>Login</button>
        <p class="message">Forgot password?<a href="#">Recover here</a></p>
    </form>
    <form action="adminLogin" class="login-form">
        <input type="text" name="adminname" placeholder="Admin Name"/>
        <input type="password" name="adminpassword" placeholder="Password"/>
        <button>Login</button>
        <p class="message">Not an admin? <a href="#">Login here</a></p>
    </form>
</div>

这是XML文件:

<?xml version="1.0" encoding="UTF-8"?> 
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
xmlns="http://java.sun.com/xml/ns/javaee" 
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
 id="WebApp_ID" version="3.0"> 
  <display-name>myapp</display-name>   
  <servlet>   
    <servlet-name>LoginServlet</servlet-name>   
    <servlet-class>CSP600.LoginServlet</servlet-class> 
  </servlet>   
  <servlet-mapping>   
    <servlet-name>LoginServlet</servlet-name>   
    <url-pattern>/adminLogin</url-pattern>  
  </servlet-mapping> 
  <servlet>   
    <servlet-name>LoginLecturerServlet</servlet-name>   
    <servlet-class>CSP600.LoginLecturerServlet</servlet-class> 
  </servlet>   
  <servlet-mapping>   
    <servlet-name>LoginLecturerServlet</servlet-name>   
    <url-pattern>/lecturerLogin</url-pattern>  
  </servlet-mapping>
  <session-config>    
    <session-timeout>-1</session-timeout>  
  </session-config>
</web-app>

这是我的Servlet(使用doGet):

try {
    LecturerBean lecturer = new LecturerBean();
    lecturer.setLecturerID(request.getParameter("lecturerid"));
    lecturer.setLecturerPassword(request.getParameter("lecturerpassword"));
    lecturer = LecturerDAO.lecturerlogin(lecturer);
    if (lecturer.isValid()) {
        HttpSession session = request.getSession(true);
        session.setAttribute("currentSessionUser", lecturer);
        response.sendRedirect("homeLecturer.jsp"); // logged-in page
    }
    else {
        response.sendRedirect("invalidLogin.jsp"); // error page
    }
}
catch (Throwable theException) {
    System.out.println(theException);
}

我已经使用了相同的代码进行管理员登录(当然,我更改了必要的部分),并且效果很好。 但是,出于未知原因,不会传递来自JSP文件的输入数据。 因此,它将NULL返回给bean和DAO。 我该如何解决这个问题?

更改

 lecturer.setLecturerID(request.getParameter("lecturerid"));
lecturer.setLecturerPassword(request.getParameter("lecturerpassword"));

 lecturer.setLecturerID(request.getParameter("lecturerID"));
lecturer.setLecturerPassword(request.getParameter("lecturerPassword"));

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM