sitemesh 在appfuse中的应用

appfuse的页面是通过sitemesh模板做的。在web.xml里的相关配置:
< filter >
< filter - name > sitemesh </ filter - name >
< filter - class > com.opensymphony.module.sitemesh.filter.PageFilter </ filter - class >
</ filter >
< filter - mapping >
< filter - name > sitemesh </ filter - name >
< url - pattern > /**/ /* </url-pattern>
<!--dispatcher>REQUEST</dispatcher>
<dispatcher>FORWARD</dispatcher-->
</filter-mapping>

然后它自己有一个配置文件。sitemesh.xml内容如下:
< sitemesh >
< property name = " decorators-file " value = " /WEB-INF/decorators.xml " />
< excludes file = " ${decorators-file} " />

< page - parsers >
< parser default = " true " class = " com.opensymphony.module.sitemesh.parser.HTMLPageParser " />
< parser content - type = " text/html " class = " com.opensymphony.module.sitemesh.parser.HTMLPageParser " />
< parser content - type = " text/html;charset=ISO-8859-1 " class = " com.opensymphony.module.sitemesh.parser.HTMLPageParser " />
</ page - parsers >

< decorator - mappers >
< mapper class = " com.opensymphony.module.sitemesh.mapper.ConfigDecoratorMapper " >
< param name = " config " value = " ${decorators-file} " />
</ mapper >
</ decorator - mappers >
</ sitemesh >

还有一个配置文件,decorators.xml,内容如下:
< decorators defaultdir = " /decorators " >
< excludes >
< pattern >/ demos /**/ /* </pattern>
<pattern>/resources/*</pattern>
</excludes>
<decorator name="default" page="default.jsp">
<pattern>/*</pattern>
</decorator>
</decorators>

表示不装饰 /demos 和 /resources下的页面。装饰器的模板为default.jsp。而且此模板网页在文件夹/decorators下。 然后打开 default.jsp.我们会看到有以下几个标签:

1 : <decorator:title/> :
导入要装饰的原始页面的title内容 然后是一些导入css和javascript的代码。

2 : <decorator:head />
导入原始页面(被包装页面)的head标签中的内容。

3 : <decorator:getProperty property="body.id" writeEntireProperty="true"/>
在标签处插入原始页面(被包装页面)的原有的标签的属性中的内容


本文摘自http://www.blogjava.net/liuwentao253/archive/2007/02/01/97325.html,此位仁兄的文章不错
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值