Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/399.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 登录Servlet不工作_Java_Eclipse_Servlets - Fatal编程技术网

Java 登录Servlet不工作

Java 登录Servlet不工作,java,eclipse,servlets,Java,Eclipse,Servlets,由于某种原因,自从我将EclipseWeb项目转移到另一台计算机后,我遇到了一个错误500。我的登录servlet不工作,请帮助!代码没有问题,因为它在我的另一台计算机上工作正常,但现在它不工作了。当我启动服务器时,它会给出一个错误500,然后每次尝试登录后,它都会给出错误404 index.html <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <link rel = "style

由于某种原因,自从我将EclipseWeb项目转移到另一台计算机后,我遇到了一个错误500。我的登录servlet不工作,请帮助!代码没有问题,因为它在我的另一台计算机上工作正常,但现在它不工作了。当我启动服务器时,它会给出一个错误500,然后每次尝试登录后,它都会给出错误404

index.html

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<link rel = "stylesheet" type = "text/css" href = "main.css">
<title>Login</title>
</head>
<body>
<form action="Login" method="post">
<h1>
Login
</h1>
 <b>Employee ID:</b> <br>
 <input type="text"name="employee_id"><br><br>
<b>Password:</b><br>
<input type="password" name="password"><br><br>
<input type="submit" value="Login"><br><br>
</form>
</body>
</html>
ValidateLogin.java servlet

import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
import java.sql.*;

public class Login extends HttpServlet {

    protected void processRequest(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
        response.setContentType("text/html;charset=UTF-8");
        PrintWriter out = response.getWriter();

        String employee_id = request.getParameter("employee_id");
        String password = request.getParameter("password");    

        HttpSession session = request.getSession(); 
        session.setAttribute("employeeid", employee_id);

        if(ValidateLogin.user(employee_id, password)) { 
            RequestDispatcher rs = request.getRequestDispatcher("PersonalInfoOutput");
            rs.forward(request, response);
        }
        else
        {
           out.print("Employee ID or Password is incorrect. Please try again.");
           RequestDispatcher rs = request.getRequestDispatcher("index.html");
           rs.include(request, response);
        }
    }  

    @Override
    protected void doPost(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
               processRequest(request, response);
          }

    @Override
    protected void doGet(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
               processRequest(request, response);
          }


        }
import java.sql.*;
public class ValidateLogin
{
    public static boolean user(String employee_id, String password)
    {
        boolean st = false;
        try { 
            Class.forName("com.mysql.jdbc.Driver").newInstance();
            Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306/payroll_system", "root", ""); 
            PreparedStatement ps = con.prepareStatement("select * from payroll_system.employee_login where employeeID = ? and pwd = ?");
            ps.setString(1, employee_id);
            ps.setString(2, password);
            ResultSet rs =ps.executeQuery();
             st = rs.next();

         }catch(Exception e)
          {
              e.printStackTrace();
          }
             return st;                 
      } 
}
错误:

HTTP Status 500 - Error instantiating servlet class Login

type Exception report

message Error instantiating servlet class Login

description The server encountered an internal error that prevented it from fulfilling this request.

exception

javax.servlet.ServletException: Error instantiating servlet class Login
    org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:502)
    org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:79)
    org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:616)
    org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:521)
    org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1096)
    org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:674)
    org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1500)
    org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1456)
    java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
    java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
    org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
    java.lang.Thread.run(Thread.java:745)
root cause

java.lang.ClassNotFoundException: Login
    org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1333)
    org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1167)
    org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:502)
    org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:79)
    org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:616)
    org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:521)
    org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1096)
    org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:674)
    org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1500)
    org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1456)
    java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
    java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
    org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
    java.lang.Thread.run(Thread.java:745)

您如何部署应用程序?应用程序服务器无法找到您的源代码,因为消息清楚地表明了这一点。 告诉我们更多关于您的代码结构、部署方法以及web.xml的信息。
你是对的,这不是代码问题,而是环境问题。

愚蠢的问题:你是否尝试重新编译项目?看起来你的war缺少一些类或JAR。你说你已经从一台计算机转移到另一台计算机,你在新计算机上有所有相同的依赖jar吗?你考虑过使用maven之类的工具来管理依赖关系吗?@sisyphus出于某种原因,它现在可以工作了,只是没有明显的原因,它开始工作了。。。。