日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

Spring Mvc返回html页面404错误解决记录--转载

發(fā)布時間:2025/4/5 46 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Spring Mvc返回html页面404错误解决记录--转载 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

原文地址:http://53873039oycg.iteye.com/blog/2061992

?以前使用Spring Mvc時候都是返回jsp頁面或者ftl頁面,昨天想返回html頁面,spring-mvc.xml配置如下:

?

Xml代碼??
  • <bean?id="viewResolver"??
  • ????????class="org.springframework.web.servlet.view.InternalResourceViewResolver"??
  • ????????p:prefix="/WEB-INF/html/"?p:suffix=".html"?/>??
  • ????Controller方法如下:

    ??

    Java代碼??
  • @RequestMapping(value?=?"/add",?method?=?RequestMethod.GET)??
  • public?String?toAddTest()?{??
  • ????return?"addTest";??
  • }??
  • ????在tomcat下測試,頁面一直是404,log日志如下:

    ?

    Java代碼??
  • [06/05/14?10:44:35:035?GMT+08:00]?DEBUG?support.DefaultListableBeanFactory:?Returning?cached?instance?of?singleton?bean?'sqlSessionFactory'??
  • [06/05/14?10:44:35:035?GMT+08:00]?DEBUG?servlet.DispatcherServlet:?Successfully?completed?request??
  • [06/05/14?10:44:38:038?GMT+08:00]?DEBUG?servlet.DispatcherServlet:?DispatcherServlet?with?name?'spring'?processing?GET?request?for?[/MyTest/test/add]??
  • [06/05/14?10:44:38:038?GMT+08:00]?DEBUG?annotation.RequestMappingHandlerMapping:?Looking?up?handler?method?for?path?/test/add??
  • [06/05/14?10:44:38:038?GMT+08:00]?DEBUG?annotation.RequestMappingHandlerMapping:?Returning?handler?method?[public?java.lang.String?com.report.controller.testController.toaddTest()]??
  • [06/05/14?10:44:38:038?GMT+08:00]?DEBUG?support.DefaultListableBeanFactory:?Returning?cached?instance?of?singleton?bean?'testController'??
  • [06/05/14?10:44:38:038?GMT+08:00]?DEBUG?servlet.DispatcherServlet:?Last-Modified?value?for?[/MyTest/test/add]?is:?-1??
  • [06/05/14?10:44:38:038?GMT+08:00]?DEBUG?servlet.DispatcherServlet:?Rendering?view?[org.springframework.web.servlet.view.JstlView:?name?'addTest';?URL?[/WEB-INF/html/addTest.html]]?in?DispatcherServlet?with?name?'spring'??
  • [06/05/14?10:44:38:038?GMT+08:00]?DEBUG?view.JstlView:?Forwarding?to?resource?[/WEB-INF/html/addTest.html]?in?InternalResourceView?'addTest'??
  • [06/05/14?10:44:38:038?GMT+08:00]?DEBUG?servlet.DispatcherServlet:?DispatcherServlet?with?name?'spring'?processing?GET?request?for?[/MyTest/WEB-INF/html/addTest.html]??
  • [06/05/14?10:44:38:038?GMT+08:00]?DEBUG?annotation.RequestMappingHandlerMapping:?Looking?up?handler?method?for?path?/WEB-INF/html/addTest.html??
  • [06/05/14?10:44:38:038?GMT+08:00]?DEBUG?annotation.RequestMappingHandlerMapping:?Did?not?find?handler?method?for?[/WEB-INF/html/addTest.html]??
  • [06/05/14?10:44:38:038?GMT+08:00]??WARN?servlet.PageNotFound:?No?mapping?found?for?HTTP?request?with?URI?[/MyTest/WEB-INF/html/addTest.html]?in?DispatcherServlet?with?name?'spring'??
  • [06/05/14?10:44:38:038?GMT+08:00]?DEBUG?servlet.DispatcherServlet:?Successfully?completed?request??
  • [06/05/14?10:44:38:038?GMT+08:00]?DEBUG?servlet.DispatcherServlet:?Successfully?completed?request??
  • ?

    ???可以看出No mapping found for HTTP request with URI錯誤導致了404,問題原因:

    ?

    ?? 參考了http://stackoverflow.com/questions/13616821/make-html-default-view-spring-mvc

    ?

    ?

    寫道 1 First the DispatcherServlet is invoked by the Servlet Container.?

    2 The DispatcherServlet finds a mapping which maps to the home method of your Controller and the home method returns a view name "HelloWorld"?

    3 Now the DispatcherServlet uses a View Resolver (your InternalResourceViewResolver) to find the View to render the model through, since the name is "HelloWorld", this maps to the /WEB-INF/view/HelloWorld.html view.?

    4 Now essentially a call is made to RequestDispatcher.forward("/WEB-INF/views/HelloWorld.html",....?

    5 The Servlet container at this point tries to find the servlet which can handle /WEB-INF/views/HellowWorld.html uri - if it had been a .jsp there is a JSPServlet registered which can handle rendering the jsp, however for *.html there is no servlet registered, so the call ends up with the "default servlet", which is registered with a servlet-mapping of / which probably your DispatcherServlet is.?

    6 Now the Dispatcher servlet does not find a controller to handle request for /WEB-INF/views/HelloWorld.html and hence the message that you are seeing

    ????解決方法:
    ??http://stackoverflow.com/questions/4249622/using-html-files-as-jsps

    ???

    寫道 Add this servletmapping for the JSP servlet(web.xml):?
    <servlet-mapping>?
    <servlet-name>jsp</servlet-name>?
    <url-pattern>*.html</url-pattern>?
    </servlet-mapping>

    ???再次訪問就OK了。

    ?

    ?? 全文完。

    轉載于:https://www.cnblogs.com/davidwang456/p/4500384.html

    總結

    以上是生活随笔為你收集整理的Spring Mvc返回html页面404错误解决记录--转载的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。