Url Rewrite Filter その5 outbound-rule要素について

外向けのURLを書き換える際のルールを記述する要素で、
HttpServletResponseのencodeURLメソッドが実行されるタイミングで、
ルールが適用されるくらいにしか把握していませんでしたが、
具体的には↓こんな感じみたいです。

下準備

  1. UrlRewriteFilterがフィルタチェーンでたらい回されてきたHttpServletResponse等をUrlRewriteWrappedResponse*1でラップする。
  2. ラップしたUrlRewriteWrappedResponseの方をフィルタチェーンにたらい回す

ほんちゃん

  1. UrlRewriteWrappedResponseのencodeURLメソッドが呼ばれる
  2. encodefirst="false"(デフォルト)のoutbound-rule要素で定義したルールがすべて適用される
  3. UrlRewriteWrappedResponseにラップされているHttpServletResponseのencodeURLメソッドが実行される
  4. encodefirst="true"のoutbound-rule要素で定義したルールがすべて適用される

*1:HttpServletResponseWrapperの継承クラス