shiro登录报错

风行傲天 2017-03-04 11:51:58
2017-03-04 11:06:51,014 INFO [org.apache.shiro.cache.ehcache.EhCacheManager] - Using existing EHCache named [activeSessionsCache]
org.apache.shiro.authc.AuthenticationException: Authentication failed for token submission [com.thinkgem.jeesite.modules.sys.security.UsernamePasswordToken - admin, rememberMe=false (113.116.78.239)]. Possible unexpected error? (Typical or expected login exceptions should extend from AuthenticationException).
at org.apache.shiro.authc.AbstractAuthenticator.authenticate(AbstractAuthenticator.java:214)
at org.apache.shiro.mgt.AuthenticatingSecurityManager.authenticate(AuthenticatingSecurityManager.java:106)
at org.apache.shiro.mgt.DefaultSecurityManager.login(DefaultSecurityManager.java:270)
at org.apache.shiro.subject.support.DelegatingSubject.login(DelegatingSubject.java:256)
at org.apache.shiro.web.filter.authc.AuthenticatingFilter.executeLogin(AuthenticatingFilter.java:53)
at org.apache.shiro.web.filter.authc.FormAuthenticationFilter.onAccessDenied(FormAuthenticationFilter.java:154)
at org.apache.shiro.web.filter.AccessControlFilter.onAccessDenied(AccessControlFilter.java:133)
at org.apache.shiro.web.filter.AccessControlFilter.onPreHandle(AccessControlFilter.java:162)
at org.apache.shiro.web.filter.PathMatchingFilter.isFilterChainContinued(PathMatchingFilter.java:203)
at org.apache.shiro.web.filter.PathMatchingFilter.preHandle(PathMatchingFilter.java:178)
at org.apache.shiro.web.servlet.AdviceFilter.doFilterInternal(AdviceFilter.java:131)
at org.apache.shiro.web.servlet.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:125)
at org.apache.shiro.web.servlet.ProxiedFilterChain.doFilter(ProxiedFilterChain.java:66)
at org.apache.shiro.web.servlet.AbstractShiroFilter.executeChain(AbstractShiroFilter.java:449)
at org.apache.shiro.web.servlet.AbstractShiroFilter$1.call(AbstractShiroFilter.java:365)
at org.apache.shiro.subject.support.SubjectCallable.doCall(SubjectCallable.java:90)
at org.apache.shiro.subject.support.SubjectCallable.call(SubjectCallable.java:83)
at org.apache.shiro.subject.support.DelegatingSubject.execute(DelegatingSubject.java:383)
at org.apache.shiro.web.servlet.AbstractShiroFilter.doFilterInternal(AbstractShiroFilter.java:362)
at org.apache.shiro.web.servlet.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:125)
at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:344)
at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:261)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:88)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:503)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:170)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:950)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:421)
at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1070)
at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:611)
at org.apache.tomcat.util.net.AprEndpoint$SocketWithOptionsProcessor.run(AprEndpoint.java:2399)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
at java.lang.Thread.run(Thread.java:745)
Caused by: org.apache.shiro.cache.CacheException: org.apache.shiro.cache.CacheException: net.sf.ehcache.CacheException: java.io.StreamCorruptedException: invalid stream header: 00000000
at org.apache.shiro.cache.ehcache.EhCache.values(EhCache.java:182)
at org.apache.shiro.session.mgt.eis.CachingSessionDAO.getActiveSessions(CachingSessionDAO.java:345)
at com.thinkgem.jeesite.common.security.shiro.session.CacheSessionDAO.getActiveSessions(CacheSessionDAO.java:152)
at com.thinkgem.jeesite.common.security.shiro.session.CacheSessionDAO.getActiveSessions(CacheSessionDAO.java:135)
at com.thinkgem.jeesite.modules.sys.security.SystemAuthorizingRealm.doGetAuthenticationInfo(SystemAuthorizingRealm.java:62)
at org.apache.shiro.realm.AuthenticatingRealm.getAuthenticationInfo(AuthenticatingRealm.java:568)
at org.apache.shiro.authc.pam.ModularRealmAuthenticator.doSingleRealmAuthentication(ModularRealmAuthenticator.java:180)
at org.apache.shiro.authc.pam.ModularRealmAuthenticator.doAuthenticate(ModularRealmAuthenticator.java:267)
at org.apache.shiro.authc.AbstractAuthenticator.authenticate(AbstractAuthenticator.java:198)
... 42 more
Caused by: org.apache.shiro.cache.CacheException: net.sf.ehcache.CacheException: java.io.StreamCorruptedException: invalid stream header: 00000000
at org.apache.shiro.cache.ehcache.EhCache.get(EhCache.java:85)
at org.apache.shiro.cache.ehcache.EhCache.values(EhCache.java:172)
... 50 more
Caused by: net.sf.ehcache.CacheException: java.io.StreamCorruptedException: invalid stream header: 00000000
at net.sf.ehcache.store.disk.DiskStorageFactory.retrieve(DiskStorageFactory.java:914)
at net.sf.ehcache.store.disk.Segment.decodeHit(Segment.java:183)
at net.sf.ehcache.store.disk.Segment.get(Segment.java:221)
at net.sf.ehcache.store.disk.DiskStore.get(DiskStore.java:467)
at net.sf.ehcache.store.FrontEndCacheTier.get(FrontEndCacheTier.java:201)
at net.sf.ehcache.Cache.searchInStoreWithoutStats(Cache.java:2070)
at net.sf.ehcache.Cache.get(Cache.java:1590)
at org.apache.shiro.cache.ehcache.EhCache.get(EhCache.java:73)
... 51 more
Caused by: java.io.StreamCorruptedException: invalid stream header: 00000000
at java.io.ObjectInputStream.readStreamHeader(ObjectInputStream.java:804)
at java.io.ObjectInputStream.<init>(ObjectInputStream.java:299)
at net.sf.ehcache.util.PreferTCCLObjectInputStream.<init>(PreferTCCLObjectInputStream.java:39)
at net.sf.ehcache.store.disk.DiskStorageFactory.read(DiskStorageFactory.java:367)
at net.sf.ehcache.store.disk.DiskStorageFactory.retrieve(DiskStorageFactory.java:910)
... 58 more


请我大虾这种问题怎么解决
...全文
1349 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
卢嘉城 2019-04-25
  • 打赏
  • 举报
回复
楼主,我和你遇到同样问题 登陆时候提示,系统出现点问题,请稍后再试! 不知道怎么解决。但是我也看到tomcat目录里有一个temp文件,里面还有jeesite文件,在里面就是ehcache文件夹打开有八个文件。
风行傲天 2017-07-27
  • 打赏
  • 举报
回复 1
问题找到了,忘记结贴了,原因是因为有两个项目使用了同样的缓存引起的,因为在window下跑,缓存是放在tomcat的temp目录下,但是在linux下跑他是放在了tomcat外面,和tomcat同目录下了,导致两个项目公用了同一文件下的缓存引起的,修改缓存目录就可以了
yql1986 2017-03-04
  • 打赏
  • 举报
回复
java.io.ObjectInputStream.readStreamHeader(ObjectInputStream.java:804) 应该是序列化的问题 保存到ehcache中的对象用是什么序列化的?
风行傲天 2017-03-04
  • 打赏
  • 举报
回复
保存到ehcache中的对象用是什么序列化的? 这个怎么查看,我用的是jeesite做的 目前找到的问题可能是因为chache配置路径的问题引起的,<diskStore path="../temp/jeesite/ehcache" /> 就是这句话,因为有两个项目用的都是jeesite做的,只是放在不同的tomcat下面跑,在本地没有问题,部署linux下面,今天找了下,发现两个项目都把 缓存目录建在 /temp/jeesite/ehcache 这里,关键是这个目录是建在tomcat文件夹外面的,和tomcat在同级目录,因为我的两个tomcat都是在同目录下,然后这两个项目把缓存文件也建在了和这两个tomcat同目录下了,我把其中的一个项目这个<diskStore path="../temp/jeesite/ehcache" />目录改了启动后又不报错了,但是不知道具体是不是这个问题引起的,因为本地windows把<diskStore path="../temp/jeesite/ehcache" /> 这个目录建立在了tomcat里面的temp目录的 <?xml version="1.0" encoding="UTF-8"?> <ehcache updateCheck="false" name="defaultCache"> <diskStore path="../temp/jeesite/ehcache" /> <!-- 默认缓存配置. --> <defaultCache maxEntriesLocalHeap="100" eternal="false" timeToIdleSeconds="300" timeToLiveSeconds="600" overflowToDisk="true" maxEntriesLocalDisk="100000" /> <!-- 系统缓存 --> <cache name="sysCache" maxEntriesLocalHeap="100" eternal="true" overflowToDisk="true"/> <!-- 用户缓存 --> <cache name="userCache" maxEntriesLocalHeap="100" eternal="true" overflowToDisk="true"/> <!-- 工作流模块缓存 --> <cache name="actCache" maxEntriesLocalHeap="100" eternal="true" overflowToDisk="true"/> <!-- 内容管理模块缓存 <cache name="cmsCache" maxEntriesLocalHeap="100" eternal="true" overflowToDisk="true"/> --> <!-- 系统活动会话缓存 --> <cache name="activeSessionsCache" maxEntriesLocalHeap="10000" overflowToDisk="true" eternal="true" timeToLiveSeconds="0" timeToIdleSeconds="0" diskPersistent="true" diskExpiryThreadIntervalSeconds="600"/> <!-- 简单页面缓存 <cache name="SimplePageCachingFilter" maxEntriesLocalHeap="100" eternal="false" overflowToDisk="true" timeToIdleSeconds="120" timeToLiveSeconds="120" memoryStoreEvictionPolicy="LFU"/> --> </ehcache>

67,515

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧