Apache shiro 属性“sessionManager.globalSessionTimeout”不存在
Posted
技术标签:
【中文标题】Apache shiro 属性“sessionManager.globalSessionTimeout”不存在【英文标题】:Apache shiro Property 'sessionManager.globalSessionTimeout' does not exist 【发布时间】:2013-07-27 12:56:10 【问题描述】:当我尝试像这样在shiro.ini
中设置会话超时时,我遇到了另一个问题:
securityManager.sessionManager.globalSessionTimeout = 3600000
我得到一个例外:
11:19:44,363 INFO [stdout](MSC 服务线程 1-4) org.apache.shiro.config.ConfigurationException:属性 'sessionManager.globalSessionTimeout' 的对象不存在 输入 org.apache.shiro.web.mgt.DefaultWebSecurityManager。
我用的是shiro 1.2.2,如果你熟悉这个异常请指教。
【问题讨论】:
【参考方案1】:您缺少 shiro.ini 文件中的一行。
securityManager.sessionMode=native
在添加上述行后,它将起作用。对于 shiro.ini 文件中的完整配置会话。
sessionManager = org.apache.shiro.web.session.mgt.DefaultWebSessionManager
securityManager.sessionMode=native
securityManager.sessionManager.globalSessionTimeout = 60000
securityManager.sessionManager = $sessionManager
【讨论】:
【参考方案2】:以上答案现在将导致警告sessionMode
属性已被弃用。
改用这个:
sessionManager = org.apache.shiro.web.session.mgt.DefaultWebSessionManager
sessionManager.globalSessionTimeout = 3600000
securityManager.sessionManager = $sessionManager
【讨论】:
以上是关于Apache shiro 属性“sessionManager.globalSessionTimeout”不存在的主要内容,如果未能解决你的问题,请参考以下文章
Apache Shiro - 使用 cn 以外的属性进行身份验证?
Apache Shiro - 用于身份验证和属性的 LDAP/用于授权的 Ini