Spring 3 MVC和Apache Tiles 2集成错误


问题内容

我一直在尝试将Spring(3.0.4和3.0.5)MVC与Apache
Tiles(2.1.2、2.1.4和2.2.2)集成在一起无济于事。在每种情况下,我都会收到以下错误:

java.lang.NoClassDefFoundError:org / apache / tiles / startup /
BasicTilesInitializer

根据Tiles文档,已弃用BasicTilesInitializer。我认为Spring的TilesConfigurer的最新版本将引用正确的类,但是没有,并且我仍然遇到相同的错误。

我正在使用以下配置在我的spring mvc应用程序中设置Tiles:

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

<beans:bean 
    class="org.springframework.web.servlet.view.tiles2.TilesViewResolver">      
    <beans:property 
        name="viewClass" value="org.springframework.web.servlet.view.tiles2.TilesView"/>                
</beans:bean>

理想情况下,我希望Spring 3.0.5与Tiles 2.2.2一起使用。它们是本文发布时的最新版本。


问题答案:

org.apache.tiles.startup.BasicTilesInitializer是一类tiles- core(2.2.1).jar。检查您是否已部署tiles-corejar