在将LWAP 开发的应用迁移为 Oracle ADF来开发的过程中,LWAP和ADF应用都 部署在同一个Weblogic 服务器的两个 Domain下,当在IE中首先 访问ADF应用,然后再另外一个标签页中访问LWAP应用,就会发现ADF应用出现问题,就会发现 session丢失。
问题是由于客户端访问ADF应用时,对应的Weblogic域会保留一个名为JSessionId的Cookie,记录ADF域的信息,JSessionId为Weblogic cookie-name的默认值,而当再次访问LWAP时,客户端Cookie中的JSessionId的值被LWAP的域修改了,此时再次访问之前的ADF应用就会导致Session丢失。
网上可以找到关于这个问题的 解决方案:
1,设置web应用的Cookie名称,让它们拥有不同的JSessionId在LWAP和ADF的weblogic. xml文件添加如下属性
<session-descriptor>
<session-param>
<param-name>CookieName</param-name>
<param-value>HADFCookie</param-value>
</session-param>
</session-descriptor>
2,一个应用使用IP来访问,另外一个应用使用域名来访问