に問題がありますservlet
。フォームを送信するときに 2 つの数値の合計に対して get メソッドを呼び出す HTML ページがあり、エラーが発生しました。しかし、私はすでにservlet
クラスで get メソッドを宣言しています。
タイプ:近況報告
メッセージ: HTTP メソッド POST は、この URL ではサポートされていません
説明request-line で受信したメソッドは、オリジン サーバーによって認識されていますが、ターゲット リソースではサポートされていません。
サーブレット コード:
public class AddServlet extends HttpServlet {
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
// TODO Auto-generated method stub
int a=Integer.parseInt(req.getParameter("num1"));
int b=Integer.parseInt(req.getParameter("num2"));
int sum=a+b;
resp.getWriter().println(sum+ " doGet method");
}
}
html コード:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Servlet</title>
</head>
<body>
<form action="add" method="get" >
Enter 1st number<input type="text" name="num1">
Enter 2st number<input type="text" name="num2">
<input type="submit">
</form>
</body>
</html>
デプロイメント記述子コード: web.xml
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://xmlns.jcp.org/xml/ns/javaee" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd" id="WebApp_ID" version="4.0">
<display-name>ServletPractice1</display-name>
<servlet>
<servlet-name>AddServlet</servlet-name>
<servlet-class>com.meet.servlet.AddServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>AddServlet</servlet-name>
<url-pattern>/add</url-pattern>
</servlet-mapping>
</web-app>