【发布时间】:2017-03-27 10:00:21
【问题描述】:
我刚开始使用 J2EE 和 servlet 编程,遇到了这个小麻烦。这是我的代码 - 我的 servlet 类代码 打包 PackageServer;
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;
public class PostServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
/**
* @see HttpServlet#HttpServlet()
*/
public PostServlet() {
super();
// TODO Auto-generated constructor stub
}
/**
* @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
response.setContentType("text/html");
PrintWriter out = response.getWriter();
String title = "Using GET Method to Read Form Data";
String docType =
"<!doctype html public \"-//w3c//dtd html 4.0 " +
"transitional//en\">\n";
out.println(docType +
"<html>\n" +
"<head><title>" + title + "</title></head>\n" +
"<body bgcolor=\"#f0f0f0\">\n" +
"<h1 align=\"center\">" + title + "</h1>\n" +
"<ul>\n" +
" <li><b>First Name</b>: "
+ request.getParameter("first_name") + "\n" +
" <li><b>Last Name</b>: "
+ request.getParameter("last_name") + "\n" +
"</ul>\n" +
"</body></html>");
out.println("<h1>Hello</h1>");
}
/**
* @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
*/
/*protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
doGet(request, response);
}*/
}
现在我在 HTML 文件中的参数是 first_name 和 last_name。我已经正确地将 web xml 文件中的 url-pattern 指定为我的 servlet 类的名称,但是当我运行我的项目时,服务器仍然以 404 not found 响应,然后显示带有 servlet 输出的视图,其中 first_name 和 last_name 设置为空值。我在这里做错了什么?
【问题讨论】:
-
你不觉得在servlet中手动生成完整的html是个坏主意吗???而不是你应该做的是为此创建一个
JSP
标签: java jsp servlets jakarta-ee