Ivan2306 2016-01-25 09:22 采纳率: 0%
浏览 1926

spring mvc3.2.16+freemarker+tiles3为什么不能正常工作

controller

 @Controller
@RequestMapping("/welcome")
public class WelcomeController {

    @RequestMapping(value = "/index")
    public ModelAndView welcomeIndex(HttpServletRequest request) {

    String param = request.getParameter("param");
    if("1".equals(param)) {
        ModelAndView mav = new ModelAndView("index");
        return mav;
    } else {
        ModelAndView mav = new ModelAndView("welcome.index.def");
        return mav;
    }


}

}

spring-mvc.xml

<bean id="viewResolver"
    class="org.springframework.web.servlet.view.UrlBasedViewResolver">
    <property name="viewClass">
        <value>org.springframework.web.servlet.view.tiles2.TilesView</value>
    </property>
</bean>

<bean id="tilesConfigurer"
    class="org.springframework.web.servlet.view.tiles2.TilesConfigurer">
    <property name="definitions">
        <list>
            <value>/WEB-INF/tiles-defs.xml</value>
        </list>
    </property>
</bean>

<bean id="viewResolverFtl" class="org.springframework.web.servlet.view.freemarker.FreeMarkerViewResolver">
    <property name="prefix" value="/" />
    <property name="suffix" value=".ftl" />
    <property name="contentType" value="text/html;charset=utf-8" />
    <property name="viewClass">
        <value> com.unicompay.framework.basedata.web.common.FreeMarkerView </value>
    </property>
</bean> 

<bean id="freemarkerConfig" class="org.springframework.web.servlet.view.freemarker.FreeMarkerConfigurer">
    <property name="defaultEncoding" value="UTF-8" />
    <property name="templateLoaderPath" value="/WEB-INF/views/" />
    <property name="freemarkerSettings" ref="freemarkerConfiguration" />
</bean>

<bean id="freemarkerConfiguration" class="org.springframework.beans.factory.config.PropertiesFactoryBean">
    <property name="location" value="classpath:conf/freemarker.properties" />
</bean>


tiles-defs,xml
<?xml version="1.0" encoding="UTF-8" ?> 

<!DOCTYPE tiles-definitions PUBLIC
"-//Apache Software Foundation//DTD Tiles Configuration 3.0//EN"
"http://tiles.apache.org/dtds/tiles-config_3_0.dtd">

<!-- 基础模版定义 -->
<definition name="mt.base.def" template="/WEB-INF/views/common/layout.ftl"  >
    <put-attribute name="content" value="/WEB-INF/views/common/content.ftl" type="freemarker"/>
    <put-attribute name="footer" value="/WEB-INF/views/common/footer.ftl" />
</definition>

<definition name="welcome.index.def" extends="mt.base.def">
    <put-attribute name="content" value="/WEB-INF/views/index.ftl" type="freemarker" />
</definition>

layout,ftl

 <#assign tiles=JspTaglibs["http://tiles.apache.org/tags-tiles"]>
<@tiles.insertAttribute name="content" />
<@tiles.insertAttribute name="footer" />




  • 写回答

2条回答 默认 最新

  • devmiao 2016-01-25 13:09
    关注
    评论

报告相同问题?

悬赏问题

  • ¥15 Python爬取指定微博话题下的内容,保存为txt
  • ¥15 vue2登录调用后端接口如何实现
  • ¥65 永磁型步进电机PID算法
  • ¥15 sqlite 附加(attach database)加密数据库时,返回26是什么原因呢?
  • ¥88 找成都本地经验丰富懂小程序开发的技术大咖
  • ¥15 如何处理复杂数据表格的除法运算
  • ¥15 如何用stc8h1k08的片子做485数据透传的功能?(关键词-串口)
  • ¥15 有兄弟姐妹会用word插图功能制作类似citespace的图片吗?
  • ¥15 latex怎么处理论文引理引用参考文献
  • ¥15 请教:如何用postman调用本地虚拟机区块链接上的合约?