JSESSIONID Cookie に httponly フラグを設定しようとしています。ただし、私は Java EE 5 で作業しており、setHttpOnly()
. doPost()
最初に、を使用して、サーブレット内から独自の JSESSIONID Cookie を作成しようとしましたresponse.setHeader()
。
それがうまくいかなかったとき、私は試しresponse.addHeader()
ました。それもうまくいきませんでした。次に、サーブレットがセッションを JSESSIONID Cookie に変換し、それを http ヘッダーに挿入する処理を行っていることを知りました。そのため、その Cookie を操作するには、フィルターを作成する必要があります。setHeader()
フィルターを書いて/で遊んでみましたaddHeader()
が、やはり役に立ちませんでした。
次に、応答オブジェクトがフィルターに到達する前にいくつかのフラッシュ/クローズ アクションが行われていることを知りました。そのため、データを操作したい場合は、それを拡張HttpServletResponseWrapper
して に渡す必要がありfilterChain.doFilter()
ます。これは完了しましたが、まだ結果が得られません。明らかに私は何か間違ったことをしていますが、何がわかりません。
これが当面の質問に関連しているかどうかはわかりませんが、サーブレットからブラウザーに返される html ドキュメントはありません。実際に起こっていることは、一部のオブジェクトが取り込まれ、JSP ドキュメントに返されることだけです。私は、Session オブジェクトが JSESSIONID Cookie に変換され、ブラウザーに送信される前に、要求に追加されたオブジェクトと共に http ヘッダーにラップされていると想定しています。
喜んでコードを投稿したいと思いますが、最初に理論の誤解が原因で問題が発生する可能性を排除したいと思います。