5

FilterChain を多用する Struts 1 アプリを継承しましたが、この非常に難読化されたコードの利点がわかりません。

「サーブレット API では、通常、特定のリクエストを制御、前処理、および/または後処理する場合にサーブレットを使用します。しかし、特定の条件に基づいて一般的なリクエストおよび/または応答をフィルタリング/変更する場合、フィルターははるかに重要です。適切。"

アプリ内のすべてのリクエストは、マーチャント ID や検索語句などの特定の条件に基づいています。しかし、エラーの原因を追跡しようとしている開発者から何が起こっているのかを完全に隠すような一連のものの中にリクエストを配置するのは気が狂っているようです。

4

2 に答える 2

7

FilterChain#doFilter()呼び出しは、最初にフィルターを使用しなかった場合とまったく同じパスをたどって、宛先への HTTP 要求を続行するだけです。これは通常、サーブレット クラスまたは JSP ファイルです。したがって、問題のあるコードをデバッグするには、目的のコードが含まれていない場合はフィルターではなく、ターゲット コードにブレークポイントを配置することをお勧めします。

于 2013-02-04T19:11:10.407 に答える
6

私の同僚 (SO に登録されていない) は、ユーザーがログインしているかどうかを確認するなど、すべてのコントローラーで実行したくないグローバル機能をアプリに適用するためのものであると説明しました。

于 2013-02-04T19:28:56.557 に答える