Strutsのセッションが維持できなかった原因

まだまだ元気にStruts1.1で開発してます。

今月からサイトリニューアルを行っていて、ローカルでisTokenValidでコケることが度々あった。
本番だと特に問題ないので気にしていなかったが、ちょっと原因を調べてみた。

ローカルの環境としては、apache<->tomcatで連携している。
tomcatのコンテキストは「/xxx」なのだけど、apacheで「/」->「/xxx」に変換して表からは「/」でも「/xxx」でもアクセス出来るようにしている。

で、セッションが維持出来ないのはこの構成が原因だった。
「/」でアクセスするのは最初だけでlinkタグが出力するのは「/xxx」になるのでセッションが維持できていたのだが、新しく作ったajaxでアクセスする箇所が「/do/yyy」とベタで書いていたため、tomcatがコンテキストが変わったとみなしてセッションを新しくしていたというオチでした。