1.在WEB-INF/lib下加入所需的jar包
commons-digester-1.6.jar,
tiles-core-2.0-20070207.130156-4.jar,
tiles-api-2.0-20070207.130156-4.jar,
struts2-tiles-plugin-2.0.6.jar,
struts2-core-2.0.6.jar
xwork-2.0.1.jar,
2. 以下内容添加到web.xml
<context-param>
<param-name>org.apache.tiles.CONTAINER_FACTORY</param-name>
<param-value>
org.apache.struts2.tiles.StrutsTilesContainerFactory
</param-value>
</context-param>
<context-param>
<param-name> org.apache.tiles.impl.BasicTilesContainer.DEFINITIONS_CONFIG
</param-name>
<param-value>/WEB-INF/tiles.xml</param-value>
</context-param>
<listener>
<listener-class>
org.apache.struts2.tiles.StrutsTilesListener
</listener-class>
</listener>
3.在WEB-INF下添加和tiles.tld和tiles.xml文件,其中tiles.tld内容为tiles-core-2.0-20070207.130156-4.jar包中META_INF/tiles-core.tld的内容。
tiles.xml内容:
<?xml version="1.0" encoding="GB2312" ?>
<!DOCTYPE tiles-definitions PUBLIC
"-//Apache Software Foundation//DTD Tiles Configuration 2.0//EN"
"http://jakarta.apache.org/struts/dtds/tiles-config.dtd">
<tiles-definitions>
<definition name="myapp.homepage" template="layout.jsp">
<put name="title" value="Tiles tutorial homepage" />
<put name="header" value="/tiles/header.jsp" />
<put name="menu" value="/tiles/menu.jsp" />
<put name="body" value="/tiles/cBody.jsp" />
<put name="footer" value="/tiles/footer.jsp" />
</definition>
</tiles-definitions>
4.struts.xml 为:
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
"http://struts.apache.org/dtds/struts-2.0.dtd">
<struts>
<package name="default" extends="tiles-default">
<action name="go" class="com.action.MyAction">
<!--result name="success">/next.jsp</result-->
<result name="success" type="tiles">myapp.homepage</result>
</action>
</package>
</struts>
红色部分根据自己项目定。注意extends="tiles-default"
5创建layout.jsp:
<%@ page contentType="text/html; charset=UTF-8"%>
<%@ taglib uri="WEB-INF/tiles.tld " prefix="tiles"%>
<html>
<head>
<title></title>
</head>
<body>
<table width="768px" height="800px" border="2" align="center">
<tr>
<td colspan="2" align="center" valign="top" width="768px" height="100px" bgcolor="#80ff80">
<tiles:insertAttribute name="header" />
</td>
</tr>
<tr>
<td align="center" width="150px" height="800px" bgcolor="#00ff00">
<tiles:insertAttribute name="menu" />
</td>
<td align="right" width="618px" height="800px" bgcolor="#ff80c0">
<tiles:insertAttribute name="body" />
</td>
</tr>
<tr>
<td colspan="2" bgcolor="#00ff40" height="100px">
<tiles:insertAttribute name="footer" />
</td>
</tr>
</table>
</body>
</html>
6.根据
<put name="title" value="Tiles tutorial homepage" />
<put name="header" value="/tiles/header.jsp" />
<put name="menu" value="/tiles/menu.jsp" />
<put name="body" value="/tiles/cBody.jsp" />
<put name="footer" value="/tiles/footer.jsp" />
在WebRoot下创建tiles目录和相应jsp文件
另:tiles的展现有点可以让你用更少的代码做更多的事情,也会让你的UI布局管理更轻松;不久之前谈过如何使用struts2,今天谈谈如何将 tiles与struts2集成:
1、安装安装共有两步: a、tiles的安装:将tiles根目录以及根目录下lib子目录中的jar文件放到WEB- INF/lib目录下。 b、struts-tiles-plugin安装:将struts2-tiles-plugin jar文件考本到WEB-INF/ 目录下。
2、web.xml的配置一个配置示例胜过千言万语:
<listener>
<listener-class>org.apache.struts2.tiles.StrutsTilesListener</listener-class> </listener>
<context-param>
<param-name>org.apache.tiles.impl.BasicTilesContainer.DEFINITIONS_CONFIG</param-name> <param-value>/WEB-INF/config/tiles/tiles-defs.xml</param-value>
</context-param>
3、action的配置使用tiles作为resulttype的action必须扩展tiles-default包或者定义tiles 的resulttype
a、扩展tiles-default的配置:
<package name="index-pkg" extends="struts-default,tiles-default" namespace="/">
<action name="index" class="org.tibetjungle.rips.action.IndexAction" method="index">
<result name="success" type="tiles">mainLayout</result>
</action> </package>
b、在配置文件中自定义:
<result-types> <
result-type name="tiles" class="org.apache.struts2.views.tiles.TilesResult"/>
</result-types> 定义后,使用方式同a。 tiles的配置很简单,具体配置问题请参考官方文档。
分享到:
相关推荐
通过这个案例,你可以学习到如何在实际项目中整合Struts2.0和Tiles,以及它们如何协同工作来实现复杂的页面布局和业务逻辑。同时,这也是一个很好的起点,可以进一步探索Java Web开发的更多高级特性,比如国际化、...
在开发Struts2.0项目时,开发者需要理解Action、拦截器(Interceptor)、结果(Result)和配置文件(如struts.xml)的工作原理。Action是业务逻辑的载体,拦截器则提供了在Action执行前后进行额外处理的能力,如登录...
5. **Tiles视图技术**:虽然不是Struts 2的核心部分,但可以通过Struts 2的集成来实现页面布局和组件重用,提高开发效率。 6. **国际化(i18n)与主题(Theme)**:Struts 2提供了内置的支持,方便开发者实现多语言...
Struts2.0是Apache软件基金会的一个开源框架,主要用于构建基于Java EE的Web应用程序。它在原有的Struts1.x的基础上进行了重大改进,引入了更多现代Web开发的最佳实践和设计模式,提高了开发效率和代码可维护性。这...
9. **插件体系**:Struts2.0拥有丰富的插件库,如Freemarker和JSP视图插件、Spring整合插件等,这些插件可以帮助开发者扩展Struts2.0的功能。 10. **最佳实践**:学习Struts2.0时,应关注最佳实践,如避免在Action...
11. **插件系统**:Struts2.0拥有丰富的插件库,如Freemarker和Velocity视图技术、JSON支持、Spring整合等,可以极大地扩展框架的功能。 学习Struts2.0的过程中,实践是非常重要的。初学者应该通过阅读提供的文档,...
9. **Tiles**:Struts2.0集成了Tiles框架,用于创建可重用的布局和页面片段,提高应用的可维护性。 10. **国际化**:Struts2.0提供了强大的国际化支持,可以通过配置资源文件实现多语言环境下的应用。 11. **异常...
本配置视频将深入讲解如何配置Struts2.0,从基础到进阶,帮助开发者掌握这一核心技术。 首先,我们要了解的是`struts2.dtd`文件。这是一个文档类型定义(DTD)文件,它定义了Struts2配置文件的结构和规则。在Struts...
10. **Struts 2.0与Spring的整合**:Struts 2.0可以通过Spring插件实现与Spring框架的无缝集成,利用Spring的依赖注入(DI)和管理Bean的能力。 深入学习Struts 2.0的源码,有助于开发者更好地理解框架的工作原理,...
总的来说,Spring 2.5.6 和 Struts 2.0 的整合是一个涉及到多个层面的过程,包括配置、Bean 管理、请求处理、异常管理和测试等。这个过程需要对两个框架有深入的理解,并且能够灵活地应用它们的核心特性。通过整合,...
7. **Tiles插件**:Tiles是Struts 2.0的一个视图组件,允许创建可重用的布局模板,提高页面设计的效率。 8. **国际化(Internationalization, i18n)**:Struts 2.0支持多语言,通过资源文件(如.properties)来...
Struts2.0的出现是为了应对Web开发中的复杂性和挑战,通过整合其他优秀的开源项目,如FreeMarker模板引擎、OGNL表达式语言以及拦截器机制,它极大地提高了开发效率和代码质量。 一、Struts2.0的主要特点: 1. **...
这个“struts2.0中文帮助手册”应该包含了Struts2.0框架的详细使用指南、配置示例、API文档以及常见问题解答等内容,对于开发者来说,是学习和工作中不可或缺的工具。通过深入学习和理解手册中的内容,开发者可以更...
通过阅读《Struts2.0中文帮助手册》,开发者可以详细了解到如何创建Action,配置Action与结果的关系,如何使用拦截器,以及如何处理请求和响应。手册还将深入讲解OGNL的使用方法,包括变量的访问、表达式的运算等。...
12. **Struts 2与Ajax**:整合Struts 2与Ajax技术,实现页面的异步更新。 13. **最佳实践**:提供了一些开发过程中应遵循的最佳实践和技巧。 `Struts2Demo`示例项目: 这个示例项目可能包含了一个简单的Struts 2...
这个压缩包包含的资源是作者学习Struts2.0过程中的笔记和示例,分为两个文档:struts2.0文档1-2.doc和struts2.0文档3-4-5.doc,涵盖了从基础到进阶的内容。 在"struts2.0文档1-2.doc"中,可能包括了以下知识点: 1...
Struts2.0的配置方式多样,既可以使用XML配置,也可以使用注解配置,甚至可以通过Convention插件实现零配置。这极大地减少了开发者的工作量,使应用更具可扩展性。此外,Struts2支持多种数据绑定方式,如OGNL...
Struts2.0 jar包是Java Web开发中的一个重要组件,它是Apache软件基金会的Struts框架的一个版本。Struts2是一个基于MVC(Model-View-Controller)设计模式的开源Java框架,用于构建企业级Web应用程序。它继承了...
Struts2.0是Java企业级开发中广泛使用的MVC框架,它极大地简化了Web应用程序的构建过程。这个“Struts2.0入門學習(繁體)”资源显然是为初学者设计的,提供了从基础到进阶的Struts2.0学习资料。CHM(Compiled Help ...