Tomcat提供404,找不到资源

时间:2018-12-21 05:49:01

标签: java spring spring-mvc tomcat

<servlet>
    <servlet-name>vajra</servlet-name>
    <servlet-class>
        org.springframework.web.servlet.DispatcherServlet
    </servlet-class>
    <load-on-startup>1</load-on-startup>
</servlet>

<servlet-mapping>
    <servlet-name>vajra</servlet-name>
    <url-pattern>/vajra/*</url-pattern>
</servlet-mapping>

访问http://localhost:8080/vajra/index.htm时,它会给出

  

原始服务器找不到目标的当前表示形式   资源或不愿透露存在。

@RequestMapping(value = "/index.htm", method = RequestMethod.GET)
public ModelAndView loadWebPage(HttpServletRequest request) {}

当我通过Jetty运行相同的应用程序时,它的工作正常,但是Tomcat给了我以上错误。

Tomcat 8.5.37版

1 个答案:

答案 0 :(得分:0)

理想情况下,您的调度程序servlet应该包含一个bean viewResolver

<bean id="viewResolver"
    class="org.springframework.web.servlet.view.InternalResourceViewResolver">
    <property name="prefix" value="/WEB-INF/jsp/" />
    <property name="suffix" value=".jsp" />
</bean>

现在,您需要从控制器中返回一个视图,该视图将由您的InternalResourceViewResolver解决。

@RequestMapping(value = "/index", method = RequestMethod.GET)
public ModelAndView loadWebPage(HttpServletRequest request) {
    ModelAndView modelAndView = new ModelAndView("index");
    return modelAndView;    
}

这假定您在/WEB-INF/jsp/index.jsp中有视图