2017-06-29 24 views
0

当我点击登录按钮nothnig正在发生的事情有人请帮助我out.Iamtrying创建登录表单,但表单操作不映射到servlet中 下面是文件登录按键没有反应,servlet不是叫

Login.jsp页面

<%@ page language="java" contentType="text/html; charset=ISO-8859-1" 
    pageEncoding="ISO-8859-1"%> 
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> 
<html> 

<head> 
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> 
<title>Login Page</title> 
</head> 
<style> 
form { 
    border: 3px solid #f1f1f1; 
    padding: 20px; 
    width: 400px; 
    display: block; 
    background: #FAFAFA; 
    margin: 0 auto; 
} 

input[type=text], input[type=password] { 
    width: 100%; 
    padding: 12px 20px; 
    margin: 8px 0; 
    display: inline-block; 
    border: 1px solid #ccc; 
    box-sizing: border-box; 
} 

button { 
    background-color: #4CAF50; 
    color: white; 
    padding: 14px 20px; 
    margin: 8px 0; 
    border: none; 
    cursor: pointer; 
    width: 45%; 
} 

img.avatar { 
        width: 40%; 
} 

button:hover { 
    opacity: 0.8; 
} 

.cancelbtn { 
    width: auto; 
    padding: 10px 18px; 
    background-color: #f44336; 
} 

.imgcontainer { 
    text-align: center; 
    margin: 24px 0 12px 0; 
} 

img.avatar { 
    width: 40%; 
    border-radius: 50%; 
} 

.container { 
    padding: 16px; 
} 

span.psw { 
    float: right; 
    padding-top: 16px; 
} 

/* Change styles for span and cancel button on extra small screens */ 
@media screen and (max-width: 300px) { 
    span.psw { 
     display: block; 
     float: none; 
    } 
    .cancelbtn { 
     width: 100%; 
    } 
} 
</style> 


<body> 
    <form name="login" action="login" method="post"> 
       <div class="imgcontainer"> 
          <img src="C:\Users\lenovo\Downloads\packing_final.jpg" 
       alt="Avatar" class="avatar"> 
     </div> 
     <div class=container> 
      <table> 
       <tr> 
        <td><label><b>Username</b></label> <input type="text" 
         placeholder="Enter UserName" name="username" required></td> 
       </tr> 

       <tr> 

        <td><label><b>Password</b></label> <input type="text" 
         placeholder="Enter Password" name="password" required></td> 
       </tr> 
       <tr> 
        <td> 
         <button type="submit">Login</button> 
         <!-- <button type="submit" onClick="parent.location='JSP/signUp.jsp'">SignUp</button> --> 
        </td> 
       </tr> 
       <!-- <tr> 
        <td><input type="checkbox" checked="checked"> Remember 
         me</td> 
       </tr> 
       <tr> 
        <td><button type="button" class="cancelbtn">Cancel</button> 
         &nbsp; <a href="#">Forgot password?</a></td> 
       </tr> --> 

      </table> 
    </form> 
</body> 
</html> 

servlet代码是这样的一只。第一SYSOUT本身不打印

package com.packing.software.controller; 

import java.io.IOException; 

import javax.servlet.ServletException; 
import javax.servlet.annotation.WebServlet; 
import javax.servlet.http.HttpServlet; 
import javax.servlet.http.HttpServletRequest; 
import javax.servlet.http.HttpServletResponse; 
import javax.servlet.http.HttpSession; 

import com.packing.software.bean.LoginBean; 
import com.packing.software.dao.LoginDao; 
public class LoginServlet extends HttpServlet{ 
    protected void doPost(HttpServletRequest request,HttpServletResponse response){ 
     System.out.println("inside servet"); 

     String userName= request.getParameter("username"); 
     String password= request.getParameter("password"); 
     LoginBean loginBean =new LoginBean(); 
     loginBean.setUserName(userName); 
     loginBean.setPassword(password); 
     LoginDao loginDao=new LoginDao(); 
     try{ 
      String userValidate= loginDao.authenticateUser(loginBean); 
      if(userValidate.equals("Admin_Role")){ 
       System.out.println("admin"); 
       HttpSession session=request.getSession(); 
       session.setAttribute("Admin", userName); 
       request.setAttribute("userName", userName); 
       request.getRequestDispatcher("/JSP/admin.jsp").forward(request,response); 
      } 
     }catch(IOException | ServletException e){ 
      e.printStackTrace(); 
     } 

    } 

} 
web.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" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5"> 
<display-name>JavaLogin</display-name> 
<session-config> 
<session-timeout>10</session-timeout> 
</session-config> 
<welcome-file-list> 
<welcome-file>JSP/login.jsp</welcome-file> 
</welcome-file-list> 
<servlet> 
<description></description> 
<display-name>LoginAction</display-name> 
<servlet-name>LoginAction</servlet-name> 
<servlet-class>com.packing.software.controller.LoginServlet</servlet-class> 
</servlet> 
<servlet-mapping> 
<servlet-name>LoginAction</servlet-name> 
<url-pattern>/login</url-pattern> 
</servlet-mapping> 
<!-- 
<servlet> 
<description></description> 
<display-name>LogoutServlet</display-name> 
<servlet-name>LogoutServlet</servlet-name> 
<servlet-class>com.login.controller.LogoutServlet</servlet-class> 
</servlet> 
<servlet-mapping> 
<servlet-name>LogoutServlet</servlet-name> 
<url-pattern>/LogoutServlet</url-pattern> 
</servlet-mapping> --> 
</web-app> 

项目结构法是这样的:

img

回答

0
Change Code login.jsp 

    <form action="login" method="post"> 

    change code web.xml file 

    <servlet> 
    <servlet-name>Login_Action</servlet-name> 
    <servlet-class>com.packing.software.controller.LoginServlet</servlet-class> 
    </servlet> 
    <servlet-mapping> 
    <servlet-name>Login_Action</servlet-name> 
    <url-pattern>/login_data</url-pattern>`enter code here` 
    </servlet-mapping>