Может ли кто-нибудь указать мне пример интеграции Spring MVC, Tiles, Freemarker?

В моих приложениях на основе Spring MVC я использую Freemarker, и он мне очень нравится, но ему не хватает преимуществ, предоставляемых шаблоном Composite View.

Я думаю попробовать использовать Tiles2 вместе с Freemarker - кто-нибудь знает, где я могу найти простой пример SpringMVC вместе с Tiles2+Freemarker?


person miceuz    schedule 21.10.2008    source источник
comment
Согласно нашему руководству по теме, некоторые вопросы по-прежнему не относятся к теме, даже если они соответствуют одному из категории, перечисленные выше:...Вопросы с просьбой порекомендовать или найти книгу, инструмент, библиотеку программного обеспечения, учебник или другой ресурс за пределами сайта не относятся к теме...   -  person Robert Columbia    schedule 05.03.2018


Ответы (2)


неважно, я решил это. мне просто нужно было указать шаблоны freemarker в файле определений плиток

<definition name="template" template="/WEB-INF/ftl/main.ftl">

и добавьте сервлет/отображение freemarker в web.xml

<servlet>
    <servlet-name>freemarker</servlet-name>
    <servlet-class>freemarker.ext.servlet.FreemarkerServlet</servlet-class>

    <!-- FreemarkerServlet settings: -->
    <init-param>
        <param-name>TemplatePath</param-name>
        <param-value>/</param-value>
    </init-param>
    <init-param>
        <param-name>NoCache</param-name>
        <param-value>true</param-value>
    </init-param>
    <init-param>
        <param-name>ContentType</param-name>
        <param-value>text/html</param-value>
    </init-param>

    <!-- FreeMarker settings: -->
    <init-param>
        <param-name>template_update_delay</param-name>
        <param-value>0</param-value> <!-- 0 is for development only! Use higher value otherwise. -->
    </init-param>
    <init-param>
        <param-name>default_encoding</param-name>
        <param-value>ISO-8859-1</param-value>
    </init-param>
    <init-param>
        <param-name>number_format</param-name>
        <param-value>0.##########</param-value>
    </init-param>

    <load-on-startup>5</load-on-startup>
</servlet>  

 <servlet-mapping>
    <servlet-name>freemarker</servlet-name>
    <url-pattern>*.ftl</url-pattern>
 </servlet-mapping>

в весенней конфигурации укажите плитки в качестве основного механизма просмотра

<bean id="tilesConfigurer" class="org.springframework.web.servlet.view.tiles2.TilesConfigurer">
        <property name="definitions">
            <list>
                <value>/WEB-INF/defs/definitions.xml</value>
            </list>
        </property>
</bean>
<bean id="viewResolver" class="org.springframework.web.servlet.view.UrlBasedViewResolver">
        <property name="viewClass" value="org.springframework.web.servlet.view.tiles2.TilesView"/>
</bean>
person Community    schedule 22.10.2008
comment
Беспокоился об этом коде в web.xml. Спасибо за ответ, Морж рулит! - person Farouk Alhassan; 14.08.2011

Другой продукт, который вы можете использовать вместо плиток, — это SiteMesh, который я использовал в некоторых приложениях. Это стоит проверить.

person Andrew Swan    schedule 22.10.2008