探索与发现

研究java技术

  BlogJava :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理 ::
  83 随笔 :: 0 文章 :: 109 评论 :: 0 Trackbacks

Tiles support


For better struts/tiles support, myfaces has an integrated JspTilesViewHandler (since release 1.0.6 bate). The main advantage of the ViewHandler is, that tiles-definitions can be sourced out into xml files (up to now using tiles and myfaces you had to definie the layout within jsp-pages).

Have a look at the tiles-webapp example.

Steps to implement a myfaces-tiles application:


1) configure the JspTilesViewHandler in your faces-config:
<application>
   <view-handler>net.sourceforge.myfaces.application.jsp.JspTilesViewHandlerImpl</view-handler>
</application>

2) add the following lines to your web.xml
<context-param>
   <param-name>tiles-definitions</param-name>
   <param-value>/WEB-INF/tiles.xml</param-value>
</context-param>

3) define your layout in a tiles-definition file (sample from the tiles-webapp).

When rendering the view, the JspTilesViewHandlerImpl will take the given viewId and compute a tileId by
  • substituting any extension by ".tiles"
  • appending ".tiles" if path-mapping is used
Next the ViewHanlder looks up in the tile-definitions for the corresponding definition.
(eg. for viewId = /page1.jsp the lookup would be /page1.tiles)

By the way, the JspTilesViewHandlerImpl is part of the myfaces-components. So someone could use it with Sun's RI too.
==================================================================
<!DOCTYPE tiles-definitions PUBLIC
 "-//Apache Software Foundation//DTD Tiles Configuration//EN"
 "http://jakarta.apache.org/struts/dtds/tiles-config.dtd">

<tiles-definitions>
   <definition name="layout.example" path="/template/template.jsp" >
       <put name="header" value="/common/header.jsp" />
       <put name="menu" value="/common/navigation.jsp" />
   </definition>

   <definition name="/page1.tiles" extends="layout.example" >
       <put name="body" value="/page1.jsp" />
   </definition>

   <definition name="/page2.tiles" extends="layout.example" >
       <put name="body" value="/page2.jsp" />
   </definition>

</tiles-definitions>


http://www.marinschek.com/myfaces/tiki/tiki-index.php?page=Features
posted on 2006-09-25 05:39 蜘蛛 阅读(571) 评论(0)  编辑  收藏 所属分类: jsf

只有注册用户登录后才能发表评论。


网站导航: