zoukankan      html  css  js  c++  java
  • WebLogic如何设置session超时时间

    1、web.xml 
    设置WEB应用程序描述符web.xml里的<session-timeout>元素。这个值以分钟为单位,并覆盖weblogic.xml中的TimeoutSecs属性
      <session-config>
        <session-timeout>60</session-timeout>
      </session-config>
    此例表示Session将在60分钟后过期
    当<session-timeout>设置为-2,表示将使用在weblogic.xml中设置的TimeoutSecs这个属性值。
    当<session-timeout>设置为-1,表示Session将永不过期,而忽略在weblogic.xml中设置的TimeoutSecs属性值。
    该属性值可以通过console控制台来设置


    2、weblogic.xml
    设置WebLogic特有部署描述符weblogic.xml的<session-descriptor>元素的TimeoutSecs属性。这个值以秒为单位
    <session-descriptor>
       <session-param>
          <param-name>TimeoutSecs</param-name>
          <param-value>3600</param-value>
       </session-param>
    </session-descriptor>
    默认值是3600


    3、jsp中控制 
    session.setmaxinactiveinterval(7200); 
    session是默认对象,可以直接引用,单位秒s 


    4、servlet中控制 
    httpsession session = request.getsession(); 
    session.setmaxinactiveinterval(7200); 
    单位秒s


    如果使用WEBLOGIC作为应用服务器,设置SESSION超时时间会选择在WEBLOGIC的控制台设定。实际上,WEBLOGIC是将超时设定保存在WEB-INF下的weblogic.xml中,格式如下:
    <session-descriptor>
        <session-param>
          <param-name>TimeoutSecs</param-name>
          <param-value>7200</param-value>
        </session-param>
    </session-descriptor>
    param-value中的数值就是超时时间,单位为秒。在设置完这个参数后,会发现超时时间并一定起效。这是为什么呢?
    原来在WEB-INF下还有一个配置文件web.xml,里面同样会有一段设置session,格式如下:
    <session-config>
         <session-timeout>30</session-timeout>
    </session-config>
    session-timeout中的值也是超时时间,单位为分钟。
    如果在两个文件中同时设置了超时时间,则会以web.xml中为准。
    所以在weblogic环境中,最好将web.xml中关于超时的设置删掉,保持唯一性。


    web.xml的session-timeout设为-1,问题解决;
  • 相关阅读:
    mpvue 引入 vant-weapp 踩坑记录
    mac上hbuilder无法启动微信小程序调试窗口的解决办法
    mac 安装了xcode,flutter doctor 却检测不到展示叉叉
    vue 前端复制粘贴方式上传图片
    401 错误时,几个细节检查
    vue 图片src动态加载
    前端优化的大方向
    how to stop code runner in vscode(macOs)
    window server 2008 r2 TLS 升级1.2
    超时时间已到。超时时间已到,但是尚未从池中获取连接。出现这种情况可能是因为所有池连接均在使用,并且达到了最大池大小
  • 原文地址:https://www.cnblogs.com/tdskee/p/7872071.html
Copyright © 2011-2022 走看看