Struts2.0.11.1/2 + Tiles 2.0.4(是Struts2.0.11的一部分)
Struts2.0.11.2比Struts2.0.11.1修改了一些安全性問題。
配置根據(jù)網(wǎng)上的例子Tiles的時(shí)候,出現(xiàn)兩個(gè)比較頭疼的問題,終于弄明白錯(cuò)在什么地方了。
1. org.apache.tiles.taglib.UseAttributeTag$Tei 找不到的問題。
10:12:31,343 ERROR [[jsp]] Servlet.service() for servlet jsp threw exception
java.lang.ClassNotFoundException: org.apache.tiles.taglib.UseAttributeTag$Tei
這個(gè)是因?yàn)樵趌ayout.jsp里面的taglib說明行里面:
原來使用的是/WEB-INF/tiles.tld。跟當(dāng)前版本不對應(yīng)。 從tiles-jsp-2.0.4.jar中解壓出tiles-jsp.tld。放到合適的位置,在聲明的時(shí)候?qū)憣涂梢粤恕?br />
另外: WEB-INF/lib 添加jar: tiles-api-2.0.6.jar tiles-core-2.0.6.jar tiles-jsp-2.0.6.jar
2. Attribute 'header' not found.
10:36:05,734 ERROR [RenderTagSupport] Error during rendering
javax.servlet.jsp.JspException: Error executing tag: Attribute 'header' not found.
這個(gè)問題出在struts.xml中定義的
本文來自:http://www.xuebuyuan.com/675702.html
org.apache.tiles.impl.BasicTilesContainer.DEFINITIONS_CONFIG
/WEB-INF/tiles.xml
這個(gè)tiles.xml中的DOCTYPE 說明字段是這樣的:
"-//Apache Software Foundation//DTD Tiles Configuration 2.0//EN"
"http://jakarta.apache.org/struts/dtds/tiles-config.dtd">
這樣是錯(cuò)誤的,應(yīng)該寫成
"-//Apache Software Foundation//DTD Tiles Configuration 2.0//EN"
"http://tiles.apache.org/dtds/tiles-config_2_0.dtd">
來自:http://www.xuebuyuan.com/675702.html