Это мой HTML-код
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>New Page</title>
</head>
<body>
<h1>Hello World!</h1>
<form method="post" action="display">
Я использовал выше метод POST для действия сервлета
Enter Name: <input type="text" name="name">
Enter City <input type="text" name="city">
<input type="submit" name="submit">
</form>
</body>
</html>
Servlet1.java
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class servlet1 extends HttpServlet {
@Override
public void doPost(HttpServletRequest request, HttpServletResponse
response) throws ServletException, IOException
используется " doPost " для метода POST, определенного в html-форме
{
response.setContentType("text/html");
Cookie c1 = new Cookie("name",request.getParameter("name"));
Cookie c2 = new Cookie("city",request.getParameter("city"));
response.addCookie(c1);
response.addCookie(c2);
, перенаправляющего на 2-й сервлетчерез эту форму
response.sendRedirect("servlet2");
}
}
servlet2.java
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class servlet2 extends HttpServlet {
@Override
public void doPost(HttpServletRequest request, HttpServletResponse
response) throws ServletException, IOException
Я получаю сообщение об ошибке " Метод HTTP GET не поддерживаетсяэтот URL", однако я нигде не упомянул GET в своем коде.
{
response.setContentType("text/html");
Cookie c[] = request.getCookies();
PrintWriter pw = response.getWriter();
for(Cookie cookie : c)
{
if(cookie.getName().equals("name") ||
cookie.getName().equals("city"))
{
pw.println(cookie.getValue()+"<br>");
}
}
pw.println("Print using cookie");
}
}
сервлет прекрасно работает, если я использую метод" doGET"в servlet2.java.Однако я использую метод POST , а затем , почему он требует "doGET" ??
Я получаю приведенную ниже ошибку для приведенного выше кода.HTTP Status 405 - HTTP метод GET не поддерживается этим URL
type: Status report
message: HTTP method GET is not supported by this URL
description: The specified HTTP method is not allowed for the requested
resource.
Apache Tomcat/7.0.56