1. ホーム
  2. java

[解決済み] SpringMVCのRequestメソッド「GET」がサポートされていないのはなぜですか?

2022-03-06 23:04:21

質問

私は @RequestMapping(value = "/test", method = RequestMethod.POST) が、エラーになります。

コードは

 @Controller
 public class HelloWordController {
 private Logger logger = LoggerFactory.getLogger(HelloWordController.class);

 @RequestMapping(value = "/test", method = RequestMethod.POST)
 public String welcome() {
  logger.info("Spring params is welcome");
  return "/WEB-INF/jsp/welcome";
 }

}

web.xmlは

<servlet>
<description>This is Spring MVC DispatcherServlet</description>
<servlet-name>SpringMVC DispatchServlet</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<init-param>
  <description>SpringContext</description>
  <param-name>contextConfigLocation</param-name>
  <param-value>classpath*:springmvc.xml</param-value>
</init-param>
<load-on-startup>1</load-on-startup>

  <servlet-mapping>
<servlet-name>SpringMVC DispatchServlet</servlet-name>
<url-pattern>/</url-pattern>

で、springmvc.xmlは

index.jspは

<form action="<%=request.getContextPath() %>/test" method="post">
<input type="submit" value="submit"> 
</form>

送信ボタンを押すとエラーになります。

<ブロッククオート

HTTP ステータス 405 - リクエストメソッド 'GET' (英語 not supported type ステータスレポート

メッセージ リクエストメソッド 'GET' not 対応

説明 指定された HTTP メソッド が要求された場合、許可されません。 リソース(リクエストメソッド 'GET'不可 がサポートされています)。

解決方法は?

変更

@RequestMapping(value = "/test", method = RequestMethod.POST)

への

@RequestMapping(value = "/test", method = RequestMethod.GET)