数据加载中……
sitemesh 简单入门 之二
2008年4月16日  Edited By DingDangXiaoMa 
 (1)printable 装饰及 page 用法。
当要打印页面内容时,不想要一些边边框框。只关注想要的内容,设置为printable decorators 即可。
sitemesh 设置方法如下:
setemesh.xml
<mapper class="com.opensymphony.module.sitemesh.mapper.PrintableDecoratorMapper">
            <param name="decorator" value="printable" />
            <param name="parameter.name" value="printable" />
            <param name="parameter.value" value="true" />
</mapper>
上面代码为设置  打印的属性及参数。?printable=true链接到打印模式上。
decorators.xml
 <decorator name="printable" page="printable.jsp"/>
功能:将name="printable" 的装饰映射到printable.jsp上。
printable.jsp
<%@ taglib uri="http://www.opensymphony.com/sitemesh/decorator" prefix="decorator" %>
<html>
    
<head>
        
<title><decorator:title default="NO Title" /></title>
        
<decorator:head />
    
</head>
    
<body>
        
<h1><decorator:title  default="No Title"/></h1>
        
<p align="right"><i>(printable version)</i></p>
        
<decorator:body />
    
</body>
</html>
这是参照官方上的例子的printable.jsp.注意。当链接指向时,没有标题时,显示No Title .当没有body部分时,则会出现null point error(我出现了这个错误,不知道是不是我机子的问题)
按照上述配置后:当访问:http://localhost/sitemesh/index.jsp?printable=true 时,就只能显示index.jsp未被修饰的数据。
再进行修改就是在页面上加一个超级链接到些页面打印状态。
在decorators/main.jsp中加入以下代码;
        <decorator:usePage id="p" />
        
<%
            HttpServletRequest req 
= p.getRequest();
            StringBuffer printUrl 
= new StringBuffer();
            printUrl.append( req.getRequestURI() );
            printUrl.append(
"?printable=true");
            
if (request.getQueryString()!=null) {
                printUrl.append(
'&');
                printUrl.append(request.getQueryString());
            }
        
%>
        
<p align="right"><a href="<%= printUrl %>">printable version</a> ]</p>
这样就在每个页面都添加上了,打印式的超级链接。 <decorator:usePage id="p" /> 是获得了页面的page对象。
(2)page:applyDecorator 用法:把某一个页面进行某种样式的映射。<page:applyDecorator page="*.jsp" name="*" />
把*.jsp映射到decorators.xml 中定义的* 装饰上。
例子:
<page:applyDecorator name="panel" page="/date.jsp" >


posted on 2008-04-16 18:07 叮当小马 阅读(290) 评论(0)  编辑  收藏 所属分类: OpenSymphony


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


网站导航: