【问题标题】:Sitemesh change decorator on runtimeSitemesh 在运行时更改装饰器
【发布时间】:2013-03-01 16:50:11
【问题描述】:

我的问候!

问题很简短:有没有办法在运行时更改装饰器?例如,我有一个带有一些“装饰器样式”的下拉菜单,所以当用户选择不同的样式时,它会更改装饰器。

如果您对此主题有任何有用的链接,我将不胜感激。

找到了这个帖子 - SiteMesh: Changing the content-type of the response - 但仍然没有帮助。

【问题讨论】:

    标签: java sitemesh


    【解决方案1】:

    我知道您可以使用meta HTML 标记来指定您希望在 JSP 文件中使用的装饰器。例如在文件login.jsp 中我需要login 装饰器:

    <head>
        <meta name="decorator" content="login" />
        <!-- where "login" is the name of the decorator -->
    </head>
    

    所以,我还没有尝试过,但您可能可以通过 POST 或 GET 参数给出装饰器的名称,并在 meta 标记中使用它:

    <meta name="decorator" content="${decoratorName}" />
    

    【讨论】:

    • 是的,我也是这么想的:通过请求更改内容,但如果它要在运行时更改,我仍然必须尝试。谢谢。
    • 是的,它可以工作,但它有一些小故障:当我更改装饰器时,资源第一次无法加载,我必须重新加载页面并清除缓存。有点奇怪,呵呵。仍在弄清楚,发生了什么。
    猜你喜欢
    • 2011-12-24
    • 2014-02-14
    • 2012-05-31
    • 2011-05-21
    • 2011-02-20
    • 2017-08-20
    • 2011-07-16
    • 1970-01-01
    • 2011-04-12
    相关资源
    最近更新 更多