当前位置: 代码迷 >> Web前端 >> 同一个Weblogic两个Domain CookieName冲突导致session失效有关问题
  详细解决方案

同一个Weblogic两个Domain CookieName冲突导致session失效有关问题

热度:443   发布时间:2012-12-22 12:05:06.0
同一个Weblogic两个Domain CookieName冲突导致session失效问题

问题描述:

???? 同一个weblogic下新建两个domain:bjmmis_domain,report_domain。前者用来部署应用,后者用来部署报表。

在应用中通过redirect方式访问报表,就会出现访问报表后,无法访问应用(session丢失,提示重新登陆)。

?

问题分析:

???? 访问应用时,会在客户端保留一个名为JsessionID的cookie,记录了 bjmmis_domain的信息,JSessionID为Weblogic ? cookie-name的默认值。当访问报表时,客户端Cookie中JSessionID的值被 report_domain刷新,于是再访问应用就会出现session丢失

??? 查看应用与报表war中的weblogic.xml中的/weblogic-web-app/session-descriptor/节点,发现两者都存在这样的session-param节点:

???? <session-param>
????? <param-name>CookieName</param-name>
????? <param-value>JSESSIONID</param-value>
??? </session-param>

?

解决方案:

?? 修改报表的weblogic.xml中的cookiename定义:

??? <session-param>
????? <param-name>CookieName</param-name>
????? <param-value>JSESSIONID1 </param-value>
??? </session-param>

?

?

另外参考http://itindex.net/blog/2010/06/18/1276830937324.html

中的解决方案,也可以采用如下方式:
访问App1时用IP来访问,访问App2时用域名来访问。

?

  相关解决方案