Could not resolve view with name 'ok' in servlet with name 'spring'

最近使用spring mvc开发项目,遇到一个问题:


javax.servlet.ServletException: Could not resolve view with name 'ok' in servlet with name 'spring'
		at org.springframework.web.servlet.DispatcherServlet.render(DispatcherServlet.java:1162)
		at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:950)
		at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:852)
		at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:882)
		at org.springframework.web.servlet.FrameworkServlet.doDelete(FrameworkServlet.java:811)
		at javax.servlet.http.HttpServlet.service(HttpServlet.java:643)
		at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
		at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
		at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
		at org.springframework.web.filter.HiddenHttpMethodFilter.doFilterInternal(HiddenHttpMethodFilter.java:74)
		at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
		at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
		at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
		at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:88)
		at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
		at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
		at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
		at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
		at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
		at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
		at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
		at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
		at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293)
		at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:859)
		at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:602)
		at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
		at java.lang.Thread.run(Thread.java:619)


引起该异常的原因:在mvc的配置文件中配置了:
而url(http://localhost:8080/SpringRestful/services/User/users?_method=delete)请求没有带扩展名,且请求的方法没有@ResponseBody签名,spring会认为你请求的结果是一个html的视图,所以才抛出了上面的异常。




解决方法如下任意一种:
1.url请求加上扩展名:http://localhost:8080/SpringRestful/services/User/users.json?_method=delete
2.请求的方法上加上@ResponseBody签名
3.改为

你可能感兴趣的:(Could not resolve view with name 'ok' in servlet with name 'spring')