【问题标题】:unknown Servlet exception throw error of HTTP Status 500HTTP 状态 500 的未知 Servlet 异常抛出错误
【发布时间】:2016-12-12 11:38:50
【问题描述】:

我已尝试添加运行 Servlet 所需的所有库,但我仍然收到引发 HTTP 状态 500 错误的异常。

我也尝试过所有以前在堆栈溢出中提出的问题。

LoginServlet.java

package com.testlogin;

import java.io.IOException;
import java.io.PrintWriter;

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

@WebServlet("/LoginServlet")
public class LoginServlet extends HttpServlet {
    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {            
        response.setContentType("text/html");

        String username = request.getParameter("username");
        String password = request.getParameter("password");
        PrintWriter pw = response.getWriter();
        pw.print("Hello");
        if (username.equals(password)) {
            pw.println("<h1>Hello </h1>" + username);
        }            
    }

    @Override
    protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {            
        doGet(req, resp);
    }        
}

login.html:

<!DOCTYPE html>
<html>

<head>
  <meta charset="ISO-8859-1">
  <title>Insert title here</title>
</head>

<body>
  <form action="LoginServlet" method="post">
    <div style="color: red">
      User Name
      <input type="text" name="username">
      <br /> Password
      <input type="password" name="password">
      <br>
      <input type="submit" value="Sign In">
    </div>   
  </form>
</body>

</html>

【问题讨论】:

  • 你的输出是什么?你得到什么例外?你能发布你的代码吗?请阅读以下关于如何在本网站提问的文章:stackoverflow.com/help/how-to-ask
  • 现在你可以看到我的输出了
  • 但是你的代码在哪里?如果我们不了解您的意图,我们将无法帮助您。
  • 你能看看我的代码吗
  • 您发布的代码与截图中的错误不符。您可以再次运行它并发布代码的精确复制和粘贴以及生成的 500 错误页面信息吗?

标签: java servlets


【解决方案1】:

好吧,不要让您的代码复杂化。我认为您的代码也可以正常工作,问题应该出在您的服务器上。 请确保您使用的是 servlet 版本 >3.0 和 tomcat 7,因为它不会在以前版本的 tomcat 中运行 试试这个。。

import java.io.IOException;
import java.io.PrintWriter;

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

@WebServlet("/LoginServlet")
public class LoginServlet extends HttpServlet {
protected void doPost(HttpServletRequest request, HttpServletResponse response)
        throws ServletException, IOException {

response.setContentType("text/html");

String username = request.getParameter("username");
String password = request.getParameter("password");
PrintWriter pw = response.getWriter();
pw.print("Hello");
if (username.equals(password)) {
pw.println("<h1>Hello </h1>" + username);
}

}


}

【讨论】:

    猜你喜欢
    • 2015-04-25
    • 2013-02-04
    • 2015-12-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-10-03
    相关资源
    最近更新 更多