Weblogic多应用部署在一个域下导致session冲突

29 篇文章 0 订阅

Weblogic多应用部署在一个域下导致session冲突问题解决办法

 

       最近在Weblogic的一个域下面同时部署了多个应用,出现了session冲突的问题。其现象是这样的,访问A正常,但是从应用A跳转到应用B后,应用A的session立马就失效了。因为以前在tomcat上也遇到过类似的情况,当时立马就想到应该是session冲突的问题,每个应用在写保存session信息的cookie时都会写一个名为jsessionid的cookie。这样达到的效果就是先访问A应用时A应用写了一个名为jsessionid的cookie保存了其session的id,结果访问B应用时B应用通过jsessionid保存了其session的id,这样就覆盖了A应用的sessionid,下次再访问A应用时A应用的session就丢失了。

       解决办法是在应用的WEB-INF目录下新建一个weblogic.xml文件,通过其session-descriptor的session-param的CookieName来指定保存session信息的cookie名称,保证各个应用之间的CookieName唯一即可。


    <?xml version="1.0" encoding="UTF-8"?>  
    <!DOCTYPE weblogic-web-app PUBLIC "-//BEA Systems, Inc.//DTD Web Application 12.1//EN" "http://xmlns.oracle.com/weblogic/weblogic-web-app/1.5/weblogic-web-app.xsd">  
    <weblogic-web-app>  
        <session-descriptor>  
                <session-param>  
                      <param-name>CookieName</param-name>  
                      <param-value>App session id</param-value>  
                </session-param>  
        </session-descriptor>  
    </weblogic-web-app>  


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值