freemarker与springMvc整合的坑

来源:互联网 发布:闪电抢购软件怎么样 编辑:程序博客网 时间:2024/05/29 07:35
//这是controller@Controller@RequestMapping()public class PageController {    @RequestMapping(value = "/page/index",method={RequestMethod.GET})    public ModelAndView index(){        ModelAndView mav=new ModelAndView();        mav.addObject("name","youmu daisuki");        mav.setViewName("index");        return mav;    }}
<?xml version="1.0" encoding="UTF-8"?><!--springmvc的配置如下所示:--><beans xmlns="http://www.springframework.org/schema/beans"       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"       xmlns:context="http://www.springframework.org/schema/context"       xmlns:mvc="http://www.springframework.org/schema/mvc"       xsi:schemaLocation="http://www.springframework.org/schema/beans        http://www.springframework.org/schema/beans/spring-beans.xsd        http://www.springframework.org/schema/context        http://www.springframework.org/schema/context/spring-context.xsd        http://www.springframework.org/schema/mvc        http://www.springframework.org/schema/mvc/spring-mvc.xsd">    <context:component-scan base-package="com.youmu.maven.web.controller" >        <context:include-filter type="annotation" expression="org.springframework.stereotype.Controller"/></context:component-scan>    <mvc:annotation-driven />    <mvc:resources mapping="/WEB-INF/**" location="/WEB-INF/"/>    <!--<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">-->        <!--<property name="suffix" value=".html"/>-->        <!--<property name="prefix" value="/WEB-INF/html/"/>-->        <!--<property name="order" value="0"/>-->    <!--</bean>-->    <!-- freemarker -->    <bean class="org.springframework.web.servlet.view.freemarker.FreeMarkerConfigurer">    <property name="freemarkerSettings">        <props>            <prop key="template_update_delay">10</prop>            <prop key="locale">zh_CN</prop>        </props>    </property></bean>     <bean class="org.springframework.web.servlet.view.freemarker.FreeMarkerViewResolver">            <property name="viewClass" value="org.springframework.web.servlet.view.freemarker.FreeMarkerView"/>         <property name="cache" value="true"/>            <property name="suffix" value=".ftl"/>            <property name="prefix" value="/WEB-INF/ftl/"/>     </bean></beans>


我试过后一直报

javax.servlet.ServletException: Could not resolve view with name 'index' in servlet with name 'spring-mvc'org.springframework.web.servlet.DispatcherServlet.render(DispatcherServlet.java:1237)org.springframework.web.servlet.DispatcherServlet.processDispatchResult(DispatcherServlet.java:1037)org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:980)org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:897)org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:970)org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:861)javax.servlet.http.HttpServlet.service(HttpServlet.java:622)org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:846)javax.servlet.http.HttpServlet.service(HttpServlet.java:729)org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)

我看了有这个文件啊,我跟源码后发现路径变成了WEB-INF/ftl/index.ftl,怎么说应该是/WEB-INF/ftl/index.ftl的啊。后来我把

FreeMarkerConfigurer的<propertyname="templateLoaderPath"value=""></property> 加上去就好了...我又试了试去掉prefix也不行,估计是这两个都有null判断(不是blank判断)。希望码友们少踩这个坑。。。
0 0
原创粉丝点击