Servletについて

  • filterの実行順序は、filter-mappingの並び順
  • マルチパートでActionチェインをしたときの問題点
    • http://www.mitchy-world.jp/java/webapp/multipart.htm
    • 通常の Request.Parameter ではパラメータを読めない
    • アップロードされたデータはストリーム(Stream)で読み込むことになるが、一度読み込むと中身が空っぽになる。これが原因で サーブレット・フィルタ(Servlet Filter)でパラメータを取得してしまうとアクション・クラス(Action)ではパラメータが空になってしまう
    • アクション・クラスで別のアクションにフォワードしてしまうとパラメータが空になってしまう
  • フォワードとリダイレクトの違い
    • フォワードはサーバ内部の挙動で遷移する
    • リダイレクトはいったんクライアントに戻り、遷移先を指示する
    • なのでフォワードはクライアントからは見えない、リダイレクトはクライアント自身が行う
    • なのでリダイレクトだとクラサバ間通信が2回発生する
    • 1回目の通信で投げられたリクエストは破棄される