浏览 3881 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2005-10-18
(1)是主菜单,所有的页面都一样; (2)是各个模块的菜单,各个模块都不相同的; (3)是需要被装饰的页面的内容,是各个模块菜单中的具体页面; 请问sitemesh中怎么处理各个模块菜单(2)的装饰啊? 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2005-10-18
目前我是写多个装饰文件的,对于各个模块
对于(1),都是在各个文件里都有 还没有想到更好的办法。 |
|
返回顶楼 | |
发表时间:2005-10-18
多谢scud,那我也先写多个装饰文件吧,想找找看有没有省事的方法
|
|
返回顶楼 | |
发表时间:2005-10-18
3个方法:
1. 可以扩展DecoratorServlet,将判断不同模块的逻辑放到代码里面,然后在decorator用扩展的属性 2. 可以在被修饰的页面上使用meta tag 3. 可以用有规则的url naming rule,比如相同模块的url都使用相同的name space,或者使用相同的前缀/后缀,mapping到不同的decorators 1和2都只需要写一个decorator页面 3则是傻瓜式的做法,不过模块不多的话,3是最实用的, ![]() |
|
返回顶楼 | |
发表时间:2005-10-18
我是在 decorator 中调用 request.requestURL 判断不同模块的。。。
|
|
返回顶楼 | |
发表时间:2005-10-19
Readonly说的第3挺实用的,先试试去
第一和第二种Readonly能再给点详细的资料不?第一次使用sitemesh |
|
返回顶楼 | |
发表时间:2005-10-19
呵呵,刚好我也处理过这样一个页面。我的做法是在(3)页面中使用meta属性,记录对应的菜单页面URL,然后在decorator中使用applyDecorator
<decorator:usePage id="mainPage"/> <page:applyDecorator page="<%=mainPage.getProperty("meta.menuPage");%>" name="menuTemplate"/> ReadOnly说的第三种方法倒是挺方便实用的:) |
|
返回顶楼 | |
发表时间:2005-11-22
正好遇到这个问题
查到一个patch http://jira.opensymphony.com/browse/SIM-175 |
|
返回顶楼 | |