Hi --

In my shiro.ini file, I have

sessionDAO = org.apache.shiro.session.mgt.eis.EnterpriseCacheSessionDAO
sessionManager = org.apache.shiro.web.session.mgt.DefaultWebSessionManager
sessionFactory= com.security.MySimpleSessionFactory
securityManager.sessionManager.sessionFactory = $sessionFactory
securityManager.sessionManager.sessionDAO = $sessionDAO

to define my own "simple session" -- it basically for now just a copy of
shiro's SimpleSessionFactory and SimpleSession classes under new names. 
Later, I plan to override the reading and writing.

But when I run, it displays this stacetrace:

javax.servlet.ServletException: Filtered request failed.

org.apache.shiro.web.servlet.AbstractShiroFilter.doFilterInternal(AbstractShiroFilter.java:299)

org.apache.shiro.web.servlet.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:81)

root cause

java.lang.ClassCastException: com.security.MySimpleSession cannot be cast to
org.apache.shiro.session.mgt.SimpleSession

org.apache.shiro.session.mgt.eis.AbstractSessionDAO.assignSessionId(AbstractSessionDAO.java:146)

org.apache.shiro.session.mgt.eis.EnterpriseCacheSessionDAO.doCreate(EnterpriseCacheSessionDAO.java:65)

org.apache.shiro.session.mgt.eis.AbstractSessionDAO.create(AbstractSessionDAO.java:116)

org.apache.shiro.session.mgt.eis.CachingSessionDAO.create(CachingSessionDAO.java:184)

org.apache.shiro.session.mgt.DefaultSessionManager.create(DefaultSessionManager.java:177)

org.apache.shiro.session.mgt.DefaultSessionManager.doCreateSession(DefaultSessionManager.java:158)

org.apache.shiro.session.mgt.AbstractValidatingSessionManager.createSession(AbstractValidatingSessionManager.java:136)

org.apache.shiro.session.mgt.AbstractNativeSessionManager.start(AbstractNativeSessionManager.java:56)

org.apache.shiro.mgt.SessionsSecurityManager.start(SessionsSecurityManager.java:121)

org.apache.shiro.subject.support.DelegatingSubject.getSession(DelegatingSubject.java:306)

org.apache.shiro.web.servlet.ShiroHttpServletRequest.getSession(ShiroHttpServletRequest.java:147)

org.apache.shiro.web.servlet.ShiroHttpServletRequest.getSession(ShiroHttpServletRequest.java:163)
        com.server.FxFilter.doFilter(FxFilter.java:139)

org.apache.shiro.web.servlet.AbstractShiroFilter.executeChain(AbstractShiroFilter.java:364)

I'm not sure if what I'm doing is legal -- should I be able to replace
SimpleSession with my own implementation?

Thanks,
Dan

--
View this message in context: 
http://shiro-user.582556.n2.nabble.com/Replacing-SimpleSession-tp6821516p6821516.html
Sent from the Shiro User mailing list archive at Nabble.com.

Reply via email to