3

Spring MVC と共に SiteMesh 2.4.2 を使用するアプリケーションを開発しています。

たとえば、2つのデコレータが必要です。

<decorators>
  <decorator name="special" page="/WEB-INF/jsp/specialtemplate.jsp">
    <pattern>/something/*</pattern>
  </decorator> 

  <decorator name="main" page="/WEB-INF/jsp/pagetemplate.jsp">
    <pattern>/*</pattern>
  </decorator>
</decorators>

問題は、メイン デコレータのみが適用されることです (ページ /something/... にも適用されます)。

/something/... のページで専用のページが使用されるように、デコレータを適切に構成するにはどうすればよいですか?

特定のテンプレートを使用したい URL はhttp://server/context/something/etcのようになります

4

2 に答える 2

1

行のに * 記号を含める

<decorator name="special" page="/WEB-INF/jsp/specialtemplate.jsp">
    <pattern>*/something/*</pattern>
</decorator> 
于 2011-05-31T11:06:58.907 に答える
0

この問題は私にも発生していましたが、私の場合、miguelr からの回答はうまくいきませんでした。

Sitemesh に加えて urlRewriteFilter (org.tuckey.web.filters.urlrewrite.UrlRewriteFilter) を使用しています。

web.xml で urlRewriteFilter フィルター マッピングの上に Sitemesh フィルター マッピングを宣言すると、sitemesh は適切に動作し始めました (つまり、他のデコレーター URL パターンを正しく取得します)。

于 2011-08-30T07:39:04.013 に答える