Apache Tiles
Apache的Tiles是一个用于建立简便的Web应用程序用户接口的模板框架。Tiles允许作者定义页片断(pagefragment),这些页片断能在运行时被整合进完整的页中。这些片断或者代码块,能被简单的包含,目的是为了减少页面间公共元素的复制,或者是用其它代码块嵌入来开发一系列可重用的模板。这些模板简化(streamline)了完整的应用开发。Tiles作为Struts框架的组件之一而逐渐普及。它还能从Struts中提取出来,整合到其它的框架中,例如Struts和Shale。
最新版本是2.0.5,也是自其从Apache的Struts中分割出去之后的首个GA(generalavailability)版本。ApacheTiles是一个视图层框架(View-layerframework),基于“CompositeView”设计模式,允许把页面分割成可重用的子页面。
ApacheTiles曾经是ApacheStruts的一部分,但是现在它是一个完整的独立框架。你所需要的是一个Servlet2.4容器和Java5.0(当然,Java1.4也是有效的)。它潜在的和JSR-168portlets兼容。
Struts2已经有了一个forTiles2.0.4插件,Tiles2.0.5用它也能工作。该插件在Struts1.4就已经实现了,至于forApacheShale/MyFaces的插件还在计划中。
补充:
ApacheTiles是一个JavaEE应用的页面布局框架。Tiles框架提供了一种模板机制,可以为某一类页面定义一个通用的模板,该模板定义了页面的整体布局。布局由可以复用的多个块组成,每个页面可以有选择性的重新定义块而达到组件的复用。
Tiles最先作为ApacheStruts框架的一个组件,后来被独立为Apache的一个独立项目。
Tiles2.1.x的新特点:
•在指定属性和模板时,Tilesdefinitionfiles对EL的支持
•加载Tiles1.x的defintionfiles
•纯Java配置,除了Tiles的容器工厂
•在插入definition时能将模板覆盖
•自定义绘制的属性,例如与其他框架的集成
•使用一个以上的Tiles容器