解决org.apache.shiro.session.UnknownSessionException: There is no session with id的问题(转)

来源:互联网 发布:免费网络推广渠道 编辑:程序博客网 时间:2024/05/22 14:01

解决org.apache.shiro.session.UnknownSessionException: There is no session with id的问题

  截个图吧

我的项目中的解决方式也是如此,spring-shiro.xml文件中相应配置如下:

    <!-- 自定义会话管理配置 -->    <bean id="sessionManager" class="com._21cn.access.common.security.shiro.session.SessionManager">         <property name="sessionDAO" ref="sessionDAO"/>        <!-- 会话超时时间,单位:毫秒  -->        <property name="globalSessionTimeout" value="${session.sessionTimeout}"/>        <!-- 定时清理失效会话, 清理用户直接关闭浏览器造成的孤立会话   -->        <property name="sessionValidationInterval" value="${session.sessionTimeoutClean}"/><!--        <property name="sessionValidationSchedulerEnabled" value="false"/> -->        <property name="sessionValidationSchedulerEnabled" value="true"/>        <!-- 这一句是关键-->        <property name="sessionIdCookie" ref="sessionIdCookie"/>        <property name="sessionIdCookieEnabled" value="true"/>    </bean>    <!-- 指定本系统SESSIONID, 默认为: JSESSIONID 问题: 与SERVLET容器名冲突, 如JETTY, TOMCAT 等默认JSESSIONID,        当跳出SHIRO SERVLET时如ERROR-PAGE容器会为JSESSIONID重新分配值导致登录会话丢失! -->    <bean id="sessionIdCookie" class="org.apache.shiro.web.servlet.SimpleCookie">        <constructor-arg name="name" value="jeesite.session.id"/>    </bean>

其中SessionManager类继承自org.apache.shiro.web.session.mgt.DefaultWebSessionManager ,实现自己的会话管理器。

阅读全文
0 0
原创粉丝点击