4

URL で画像を提供するサーブレットを使用して Spring Web アプリを構成しました。

/imgsrv?imgid=12345

Sitemesh もインストールしましたが、このイメージ サーブレットを呼び出すと、このサーブレットに関連するデコレータ例外が発生します。このサーブレットにデコレータを適用する必要はありません。

Sitemesh docs によると、特定の URL を除外してデコレーターを適用することはできますが、構文は明確ではありません。

上記の URL を「装飾」から除外するのに最も正しいと思われるパターンは、次のうちどれですか。

<decorators defaultdir="/WEB-INF/view/decorators">
    <excludes>
        <pattern>/imgsrv*</pattern>
        <pattern>/imgsrv/*</pattern>
        <pattern>/imgsrv**</pattern>
        <pattern>/imgsrv/**</pattern>
        <pattern>/imgsrv*.*</pattern>
        <pattern>/imgsrv/*.*</pattern>
    </excludes>
    <decorator name="main" page="main.jsp">
        <pattern>/*</pattern>
    </decorator>
</decorators>
4

1 に答える 1

8

これで十分だと思います:

<decorators defaultdir="/WEB-INF/view/decorators">
    <excludes>
        <pattern>/imgsrv</pattern>
    </excludes>
    <decorator name="main" page="main.jsp">
        <pattern>/*</pattern>
    </decorator>
</decorators>

既知のサーブレット パスに直接マッピングしています。パラメータを処理するためにワイルドカードは必要ありません ( のように?imgid=12345)。

于 2010-09-13T10:01:19.347 に答える