最近在学习 struts2
想以它为基础整合一下 spring和 ibatis 弄个通用demo 以后做项目用
后来有想把 tiles 也搞进去 可以确出来一堆的问题 困扰了我 两天 最后终于解决了
好了 废话不多说 就把我遇到的问题和解决方法拿出来和大家分享一下
在参考 struts2 showcase 后 就试着把tiles 整合到自己的应用里
可是 没有想到 这么简单的几行配置到我的应用里就愣是 出了问题。
1. tiles.xml 配置 问题 :
把showcase 的 配置文件的内容拷贝过来 没有想到直接就出了问题
<!DOCTYPE tiles-definitions PUBLIC
"-//Apache Software Foundation//DTD Tiles Configuration 2.0//EN"
"http://struts.apache.org/dtds/tiles-config_2_0.dtd">
<tiles-definitions>
<definition name="showcase.index" template="/tiles/layout.jsp">
<put name="title" value="Tiles Showcase"/>
<put name="header" value="/tiles/header.jsp"/>
<put name="body" value="/tiles/body.jsp"/>
</definition>
</tiles-definitions>
这是官方的配置 照抄过来 竟然报错 真是快 吐血了
看了一下提示说:
ERROR [http-8080-Processor24] - Error executing tag: Attribute 'title' not found.
org.apache.tiles.TilesException: Attribute 'title' not found.
at org.apache.tiles.jsp.taglib.InsertAttributeTag.render(InsertAttributeTag.java:112)
at org.apache.tiles.jsp.taglib.RenderTagSupport.execute(RenderTagSupport.java:171)
at org.apache.tiles.jsp.taglib.RoleSecurityTagSupport.doEndTag(RoleSecurityTagSupport.java:75)
at org.apache.tiles.jsp.taglib.ContainerTagSupport.doEndTag(ContainerTagSupport.java:80)
at org.apache.jsp.tiles.layout_jsp._jspx_meth_tiles_005fgetAsString_005f0(layout_jsp.java:105)
at org.apache.jsp.tiles.layout_jsp._jspService(layout_jsp.java:62)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:98)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:328)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:315)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:265)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
定义 Attribute 'title' not found. 而且是所有的 页面都没有找到
看了一下配置文件 没有问题呀 。于是就检查 jar 看看是不是 少包
看了一下 所有的包又都还在 于是乎 就觉 包的版本不对 就把 showcase 里的 jar 全弄了过来。 这下应该好了把
唉:结果问题依旧。
于是乎我就开始 baidu 和 谷歌 ,狂搜了大半天 也没有什么结果。 后来就 把 tiles 的文档也都下载下来。看了一下。发现:
dtd 的语法定义和官方的不一样 。
struts2 提供的 是
http://struts.apache.org/dtds/tiles-config_2_0.dtd
<put name="title" value="Tiles Showcase"/>
而tiles 自己的是
http://tiles.apache.org/dtds/tiles-config_2_0.dtd
<put-attribute name="title" value="Tiles Showcase"/>
于是就把 tiles 的配置改成了下面的配置 。运行了一下 果然很神奇,没有再报上面的错误
至此问题终于解决了。
回头想了一下 还真是有点可笑。竟然被这两行代码 弄得 晕头转向。也在心里"祝福"了一下开发 struts2 大大们
分享到:
相关推荐
struts2集成tiles2.myeclipse10
体验Struts2和tiles的神奇结合。
struts2.2+velocity+tiles+spring3+mybatis3.05集成框架实例 ,最新的框架组合.。
11.1.2 Struts 2如何解决本地Java对i18n支持的问题 243 11.2 Struts 2 i18n示例 244 11.2.1 Struts 2 i18n快速展示 244 11.2.2 幕后一览 246 11.3 Struts 2 i18n详情 247 11.3.1 Struts 2默认的TextProvider Re-...
tiles+servlet简单例子,没有集成struts,单纯的tiles+servlet
集成 Struts、Tiles 和 JavaServer Faces.doc
d、表单验证解决了请求数据的验证问题,增强了系统健壮性。 e、便于团队开发 Struts缺点: a、大量的使用标签,对于初学者难度较大。 b、ActionForms使用不便、无法进行单元测试(StrutsTestCase只能用于集成) ...
简单springsecurity3.0的例子 做了详细注释,另外集成了tiles 和conversion插件,希望对你有帮助,里面有不对的地方请给我留言,我加你QQ一起讨论..注:我是通过maven管理的,如果你不是的话可能无法运行起来,只能看代码
Struts标签来自于5个标签库:HTML...其中也包括了有关Struts-EL和JSTL的用法示例和相关信息,以及JSF和Struts-Faces集成标签库里面所适用的对等标签。这个参考不包括废弃的Template标签库,它已经被Tiles标签库所取代。
例如XHTML / HTML5,CSS3,JavaScript,Bootstrap,Ajax,jQuery,JEE平台的Web组件:Servlet和JSP,Servlet和JSP的集成:模型视图控制器(MVC)架构的实现,基于MVC的框架作为Apache Struts2,Tiles2,以实现统一一...
lib/struts2-core-2.0.11.jar lib/poi-3.11-20141221.jar lib/poi-excelant-3.11-20141221.jar lib/poi-ooxml-3.11-20141221.jar lib/poi-ooxml-schemas-3.11-20141221.jar lib/poi-scratchpad-3.11-20141221....
AOP 和 IOC 是补充性的技术,它们都运用模块化方式解决企业应用程序开发中的复杂问题。在典型的面向对象开发方式中,可能要将日志记录语句放在所有方法和 Java 类中才能实现日志功能。在 AOP 方式中,可以反过来将...
所以,Spring 框架支持与 Jakarta Struts 的集成。Web 模块还简化了处理多部分请求以及将请求参数绑定到域对象的工作。 Spring MVC 框架:MVC 框架是一个全功能的构建 Web 应用程序的 MVC 实现。通过策略接口,MVC ...
9.9. 常见问题的解决方法 9.9.1. 对一个特定的 DataSource 使用了错误的事务管理器 9.10. 更多的资源 10. DAO支持 10.1. 简介 10.2. 一致的异常层次 10.3. 一致的DAO支持抽象类 11. 使用JDBC进行数据访问 ...
9.9. 常见问题的解决方法 9.9.1. 对一个特定的 DataSource 使用了错误的事务管理器 9.10. 更多的资源 10. DAO支持 10.1. 简介 10.2. 一致的异常层次 10.3. 一致的DAO支持抽象类 11. 使用JDBC进行数据访问 ...
14.3.2. 如何集成Tiles 14.4. Velocity和FreeMarker 14.4.1. 需要的资源 14.4.2. Context 配置 14.4.3. 创建模板 14.4.4. 高级配置 14.4.5. 绑定支持和表单处理 14.5. XSLT 14.5.1. 写在段首 14.5.2. 小结 ...
这个jar文件包含Spring对Hibernate 2及Hibernate 3进行封装的所有类。 (7) spring-jdbc.jar 这个jar文件包含对Spring对JDBC数据访问进行封装的所有类。 (8) spring-orm.jar 这个jar文件包含Spring对DAO特性集...
14.3.2. 如何集成Tiles 14.4. Velocity和FreeMarker 14.4.1. 需要的资源 14.4.2. Context 配置 14.4.3. 创建模板 14.4.4. 高级配置 14.4.5. 绑定支持和表单处理 14.5. XSLT 14.5.1. 写在段首 14.5.2. 小结 ...
14.3.2. 如何集成Tiles 14.3.2.1. InternalResourceViewResolver 14.3.2.2. ResourceBundleViewResolver 14.4. Velocity和FreeMarker 14.4.1. 需要的资源 14.4.2. Context 配置 14.4.3. 创建模板 14.4.4. 高级配置...
优点: 对覆盖绑定(overriding binding)、验证(validation)等提供生命周期管理 与许多表示层技术/框架无缝集成:JSP/JSTL、Tiles、Velocity、FreeMarker、Excel、XSL、PDF 等 便于测试——归功于IoC 缺点: ...