2012-05-08 8 views
0

問題があります。 PrettyFacesが私のwebservlet URLパターンをオーバーライドしているようです。PrettyFaces 3.32/JSF 2/Servlet 3.0の問題

今私のwebservletのURLPATTERNが呼び出されることはありません私のかわいい顔定義に当てはまる私はURLを持つたびに

@WebServlet(urlPatterns = {"/images/*", "/images/temp/*"}) 

を次のURLPATTERN私はかなり-config.xmlの

<url-mapping id="searchClassifiedAdsBeanRewrite"> 
    <pattern value="/#{prefixDummy}/#{region:searchBean.region}/#{category:searchBean.category}" /> 
    <view-id value="/searchClassifiedAds.html" /> 
</url-mapping> 

私のサーブレットの一部。最初の1つまたは2つ目のURLパターンではありません。

私は美しい顔のマッチをしていないと、すべてが動作します。 (私は#{prefixDummy}とハードコードを変更しても、それは動作しません。

私はダイナミックな画像を表示するために、ファイルのサーブレット(BalusCから実際にその一例)を使用しています!

どれでも助けて感謝、 おかげ

答えて

1

PrettyFacesサポートフォーラムは、おそらくあなたは、この質問のために開始したい場所です:http://ocpsoft.org/support/forum/prettyfaces-users

しかし、あなたはここで尋ねたので、:)基本的に何を見ていることが期待される行動を。 PrettyFacesは、指定されたパターンに一致するすべての着信サーブレット要求、転送、エラー、またはインクルードに一致します。イメージのURLがそのパターンと一致すると、他のURLと同様にPretty URLマッピングによって一致します。

他のURLと競合しないように、パターンをより厳密に制限する必要があります。

これは、書き換えコアフレームワーク(http://ocpsoft.org/rewrite/)が含まれている場合、PrettyFaces 4で扱いやすくなります。 。あなたは、既存のサーブレットによってマップされているURLを除外したURLと一致することができるようになります)

これはリライトで既に可能である:一致するからルールを防ぎServletMapping.includes("/{prefixDummy}/{region}/{category}")

ConfigurationProvider.begin() 
.addRule(Join.path("/{prefixDummy}/{region}/{category}").to() 
     .when(Not.any(ServletMapping.includes("/{prefixDummy}/{region}/{category}"))) 
     .where("region").bindsTo(PhaseBinding.to(El.parameter("searchBean.region"))) 
     .where("category").bindsTo(PhaseBinding.to(El.parameter("searchBean.category")))) 

お知らせ負の制約コンテナ内のサーブレットが別の方法でリクエストを処理できる場合

+0

こんにちはリンカーンと素早い返信をありがとう。 私はエキスパートではありませんが、どのように表示されないのですか 次のパターン/テスト/ {地域}/{カテゴリ}が次のイメージ/ *と/ images/temp/*をオーバーライドします。 ありがとう:) – Dimman

+0

画像のURLが/images/foo/bar.jpgの場合、パターン「/ {prefix}/{region}/{category}」が画像に一致します。 – Lincoln

+0

/images/bar.jpgも機能しません。さらに/image-hardcoded.jpg のみ/ *は動作します:/ 返信いただきありがとうございます。ありがとう:) – Dimman

関連する問題