您的位置:首页 > 其它

weblogic下同域不同端口下的跨域问题解决

2012-10-29 21:30 309 查看
环境:同一台服务器,同一个Weblogic应用程序,分别建两个域,两个域IP一样,端口不同.一个域里放Web应用A,一个放Web应用B.

 

操作:用户访问A程序的时候,A程序会返回一个链接,让用户去访问B.

 

问题:当用户成功访问到A给出的链接之后,与A的Session就丢失了

 

解决方法:

在A或B的WebInfo下建一个weblogic.xml,里面添加如下配置:

通过在weblogic.xml中进行如下设置后,问题解决。

<session-descriptor>
<session-param>
<param-name>CookieName</param-name>
<param-value>TS</param-value>
</session-param>
</session-descriptor>


【问题分析】

同一个Server ServerName = Server01,同一个Weblogic,分别建立两个Domain,Domain01(port-8018)和Domain02(port-8008),将应用App1部署在Domain01,将应用App2部署在Domain02,同时启动这两个Domain,如果完全是默认配置,单独访问两个应用是没有问题的,但是在同一个客户端如果访问App1之后再访问APP2会发现App1的Session丢失。

客户端在访问App1时,Domain01会在该客户端保留一个名为 JSessionID的Cookie,记录了Domain01的信息,JSessionID为Weblogic cookie-name的默认值,当同一个客户端访问App2时,该客户端Cookie中JSessionID的值被Domain02刷新,此时如果在之前已经打开的IE中继续访问App1会发现Session丢失(JSessionID已经被Domain02刷新!)。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: