在部署多个应用时,可能会部署在同一个server下,只是上下文根路径不同,这样会导致每个应用的sessionID是相同的,如下图所示:
分别访问,会发现sessionID相同。
我部署的这两个项目很简单,index.jsp里只是简单获取sessionID
request.getSession().getId();
访问时只是路径不同,端口号相同,如下图:
为了使这两个应用的session不冲突,修改步骤如下:
1、登录WAS的控制台→应用程序→应用程序类型→WebSphere 企业应用程序,点击应用名称的链接。
2、点击会话管理超链接
3、选中覆盖会话管理、选中启用cookie
保存配置,然后再点击“启用cookie”这个链接,如下图:
因为我们上下文根一个是sesa,一个是sesb,所以cookie路径选择“使用上下文根”即可。
4、保存配置后,记得在控制台重启应用。
重新刷新页面,会发现sessionID不同了~