2 wskai262733581 wskai262733581 于 2014.03.07 18:11 提问

用了shiro后,再添加quartz出错的问题

项目中用了apache的shiro,spring的mvc.整个项目非常正常。
后来因业务需求加上了quartz,结果在quartz中保存数据时,出现如下异常

org.apache.shiro.UnavailableSecurityManagerException: No SecurityManager accessible to the calling code, either bound to the org.apache.shiro.util.ThreadContext or as a vm static singleton. This is an invalid application configuration.

具体表现在quartz启动后,调用相关方法取得数据,然后调用save的时候就报错,未检查出问题,但是在去掉quartz后,整个项目一切正常。

所以,我想请问一下,在quartz中是否还有针对shiro的处理。

3个回答

tantian189
tantian189   2015.11.12 14:18

这个问题原因是存在两个不同版本的quartz-scheduler依赖,shiro依赖 org.opensymphony.quartz 1.6.1,opensymphony关闭之后,quartz以独立的开源项目运行,两个版本的代码结构不一致造成的。
http://shiro.apache.org/static/1.2.3/shiro-quartz/dependencies.html

tanghom
tanghom 回复ljz0721cx: 你解决了吗?有解决方案的话能否发我邮箱下?tanghom@qq.com
一年多之前 回复
u011077966
u011077966 回复ljz0721cx: 你搞定了吗,我也遇到这个问题了
一年多之前 回复
u010334303
u010334303 SecurityManager securityManager = (SecurityManager)appCtx.getBean("securityManager"); SecurityUtils.setSecurityManager(securityManager);
一年多之前 回复
u010334303
u010334303 我也刚好遇到这个问题
一年多之前 回复
u010334303
u010334303 请问 如何解决这个问题
一年多之前 回复
tanghom
tanghom   2016.07.14 11:50

你解决了吗?有解决方案的话能否发我邮箱下?tanghom@qq.com,谢谢

tanghom
tanghom   2016.10.09 17:47
little_moster_030
little_moster_030 回复tanghom: 你的项目里哪里用到了定时器中使用shiro中的securityManager对象了?
3 个月之前 回复
tanghom
tanghom 看下我项目中的,spring-shiro.xml sessionManager cn.tanghom.support.shiro.filter.SimpleWebSessionManager是自己重写的
大约一年之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!