【问题标题】:sitemesh excluding trouble排除麻烦的sitemesh
【发布时间】:2012-01-08 17:26:02
【问题描述】:

这是我的 sitemesh-decorators.xml 文件内容

<decorators defaultdir="/WEB-INF/sitemesh">
    <excludes>
        <pattern>*.html*</pattern>
        <pattern>*.json*</pattern>
        <pattern>*.xml*</pattern>
        <pattern>*.download*</pattern>
        <pattern>/WEB-INF/views/dashboard/dashboard.jsp</pattern>
    </excludes>

    <decorator name="minimal" page="minimal.jsp">
        <pattern></pattern>
    </decorator>

    <decorator name="none" page="none.jsp">
        <pattern></pattern>
    </decorator>

    <decorator name="default" page="default.jsp">
        <pattern>*</pattern>
    </decorator>

</decorators>

但不排除仪表板,任何想法,我都尝试通过添加单个页面来更改“默认”标签的模式,但没有效果。

我也尝试在“无”标签中输入排除 jsp 页面。有没有人有自定义的经验?

【问题讨论】:

    标签: sitemesh


    【解决方案1】:

    我将我的 sitemesh-decorator.xml 更改为

    <decorators defaultdir="/WEB-INF/sitemesh">
        <excludes>
            <pattern>*.html*</pattern>
            <pattern>*.json*</pattern>
            <pattern>*.xml*</pattern>
            <pattern>*.download*</pattern>
        </excludes>
    
        <decorator name="minimal" page="minimal.jsp">
            <pattern></pattern>
        </decorator>
    
        <decorator name="none" page="none.jsp">
            <pattern></pattern>
        </decorator>
    
        <decorator name="default" page="default.jsp">
            <pattern>*</pattern>
        </decorator>
    
        <decorator name="dashboard" page="/WEB-INF/views/dashboard/dashboard.jsp"/>
    
    </decorators>
    

    使用过

    <meta name="decorator" content="dashboard">
    

    在我的dashboard.jsp 中,它成功了。

    这是最好的方法吗?

    【讨论】:

      【解决方案2】:

      我有同样的问题,我解决的方法是添加一个名为“no”的新装饰器:

      <?xml version="1.0" encoding="UTF-8"?>
      <decorators defaultdir="/WEB-INF/layouts/">
          <excludes>
              <pattern>/static/*</pattern>
              <pattern>/api/*</pattern>
              <pattern>/</pattern>
          </excludes>
          <decorator name="default" page="default.jsp">
              <pattern>/*</pattern>
          </decorator>
          <decorator name="no" page=""></decorator>
      </decorators>
      

      并将不想使用装饰器的元数据添加到您的页面:

      <meta name="decorator" content="no" />
      

      【讨论】:

      • 很抱歉恢复了这一年前的帖子,但您的回答确实有效。问题是我想它必须以某种方式使用&lt;excludes&gt; 标签来完成,虽然我还不知道该怎么做,因为sitemesh 似乎忽略了我的排除:/
      【解决方案3】:

      我们可以这样添加:

      <mapping path="/Login" exclue="true"/>
      

      http://wiki.sitemesh.org/wiki/display/sitemesh3/Configuring+SiteMesh+3

      【讨论】:

        猜你喜欢
        • 2017-02-23
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-10-07
        • 2017-10-13
        • 2023-03-13
        相关资源
        最近更新 更多