shiro实现单用户登录出现类型转换错误
求解...
验证类:
//2.处理--个账号异地登录的问题,后期用户量上来需要做优化,比如登录用cas
DefaultWebSecurityManager securityManager = (DefaultWebSecurityManager) SecurityUtils . getSecuri tyManager();
DefaultwebSessionManager sessionManager = (DefaultwebSessionManager)securityManager . getSessionManager();//获取当前已登录的用户session列表
Collection<Session> sessions = sessionManager .getSessionDA0() . getActiveSessions();
for(Session session:sessions){
/ /查找是否有当前登录账户的记录,有就清除该用户以前登录时保存的session
object obj = session. getAttribute(DefaultSubjectContext . PRINCIPALS_ SESSION_ KEY);
在第二个转换那 出现错误 手机提问的 代码是图片转文字 可能有点小错误 主要是不知道为啥 类型转换错误
这个是错误
org. apache. shiro. web. session. mgt . Serv1etContainerSessionManager cannot be cast to org. apache. shiro . web. session. mgt. DefaultWebSessionManagernfigure . UserRealm. doGetAuthenticationInfo(UserRealm.java:71) ~[classes/ :na]
配置shiro类
//ІГ
@Bean
public ShiroFilterFactoryBean getShiroFilterFactoryBean@Qualifier( "manager") DefaultWebSecurityManager managShiroF ilterFactoryBean bean = new ShiroF ilterFactoryBean();
//设置安全管理器
bean. setSecurityManager(manager);
//添加shiro内置过滤器
/*
anon: FR ihiRTJi5jD
authc:必須人証了オ能彷向
user:必须拥有记住我一般不用
perms ;拥有对某个资源的权限才能访问
* role:拥有某个角色才能访问
Map<String, String> filterMap = new LinkedHashMap<String, String>();//filterMap. put(" /user/*", "anon");
filterMap. put(" /writer/*", "authc");
filterMap . put(" /logout" , "logout");
bean. setFilterChainDefinitionMap( filterMap);
bean. setLoginUrl("/");
bean. setUnauthorizedUrl("/");return bean;
//管理器
@Bean(name= "manager" )
public DefaultWebSecurityManager getDefaultWebSecurityManager@Qualifier("userRealm")UserRealm realm) fDefaultWebSecurityManager securityManager = new DefaultWebSecurityManager();
/ /失朕realm
securityManager . setRealm( realm);
return securityManager;