@Controller 어노테이션을 사용한 클래스를 테스트 하고자 Junit을 사용했는데 저런 오류가 나온다.
근데 뷰를 만들어서 톰캣으로 실행하면 그건 된다...
근본적 원인은 Spring Legacy Project에선 서블릿 버전을 기본으로 2.5를 사용하는데, MockMvc 같은 경우는 서블릿 버전 3.0이상을 사용해야 작동이 된다. 그런데 이상한 점은 내 pom.xml에는 이미 서블릿 3.0이상 버전을 사용하고 있었던것.
알고보니 위에 아티팩트 servlet-api가 적용되서 mockmvc가 작동되지 않았던 것 같다.
해당 사진 처럼 주석처리를 하거나 지우면 작동한다.
머리빠질것 같다.
댓글