现象:A系统和B系统同属于一个域名下,A系统登录后,要访问B系统资源,在访问B系统资源时调用B系统登录认证,B系统登录成功,可以访问资源。但是返回到A系统发现退出登录了,感觉莫名其妙。经过一通网上查找,发现A系统和B系统的sessionid名字是一样的,采用tomcat默认名称JSESSIONID(ps:Jsessionid只是tomcat的对sessionid的叫法,其实就是sessionid;在其它的容器也许就不叫jsessionid了),所以B系统登录后串改了JSESSIONID的值,导致A系统退出登录了。
解决思路:自定义存入cookie中的JSESSIONID名称。
解决办法:在web.xml文件中添加以下配置代码。
<session-config>
<cookie-config>
<!--自定义cookie中jsessionid名称-->
<name>MY_JSESSIONID_YAHOOOOOO</name>
</cookie-config>
</session-config>