[SPRING] Spring MVC 요청 메소드 'GET'이 지원되지 않는 이유는 무엇입니까?
SPRINGSpring MVC 요청 메소드 'GET'이 지원되지 않는 이유는 무엇입니까?
@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>
입력 버튼 브라우저에 오류가 있습니다.
해결법
-
==============================
1.변화
변화
@RequestMapping(value = "/test", method = RequestMethod.POST)
에
@RequestMapping(value = "/test", method = RequestMethod.GET)
-
==============================
2.method = POST는 양식을 url / test에 '게시'하는 경우 작동합니다.
method = POST는 양식을 url / test에 '게시'하는 경우 작동합니다.
브라우저의 주소 표시 줄에 url을 입력하고 Enter 키를 누르면 항상 GET 요청이므로 POST 요청을 지정해야합니다.
HTTP GET 및 HTTP POST 용 Google (PUT DELETE와 같은 여러 가지가 있습니다.) 그들 모두에는 그들 자신의 의미가 있습니다.
-
==============================
3.컨트롤러에 get 및 post 요청을 포함하여이 오류를 해결했습니다. method = {RequestMethod.POST, RequestMethod.GET}
컨트롤러에 get 및 post 요청을 포함하여이 오류를 해결했습니다. method = {RequestMethod.POST, RequestMethod.GET}
-
==============================
4.나는 또한 같은 문제가 있었다. 나는 그것을 다음과 같이 바꿨다.
나는 또한 같은 문제가 있었다. 나는 그것을 다음과 같이 바꿨다.
자바 :
@RequestMapping(value = "/test", method = RequestMethod.GET)
HTML 코드 :
<form action="<%=request.getContextPath() %>/test" method="GET"> <input type="submit" value="submit"> </form>
기본적으로 GET을 사용하는 양식에 http 메소드를 지정하지 않은 경우. POST 메소드를 사용하려면 특별히 명시해야합니다.
희망이 도움이됩니다.
from https://stackoverflow.com/questions/3333611/why-springmvc-request-method-get-not-supported by cc-by-sa and MIT license
'SPRING' 카테고리의 다른 글
[SPRING] 구성 클래스에 대한 가져 오기 후보를 처리하지 못했습니다. (0) | 2018.12.25 |
---|---|
[SPRING] 스프링 배치에서 멀티 스레딩을 설정하는 방법은 무엇입니까? (0) | 2018.12.25 |
[SPRING] Spring + AspectJ는 aspectj-maven-plugin을 사용하여 자바 8을 위빙한다. (0) | 2018.12.25 |
[SPRING] Java에서 Spring 애플리케이션을 시작하는 예외 (0) | 2018.12.25 |
[SPRING] Spring에서 인스턴스화 된 빈 목록을 얻으려면 어떻게해야합니까? (0) | 2018.12.25 |