使用shiro,在启动服务器时,出现如下错误:

上网查了很久大部分都是说,
出现这个问题是因为在shiro的DefaultWebSessionManager类中,默认Cookie名称是JSESSIONID,这样的话与servlet容器名冲突, 如jetty, tomcat等默认JSESSIONID, 当跳出shiro servlet时如error-page容器会为JSESSIONID重新分配值导致登录会话丢失!
我们只需要自己指定一个与项目运行容器不冲突的sessionID就好了
可是我发现自己已经指定了与项目运行容器不冲突的sessionID,可还是没有用,这时,我发现只要每次启动服务器前,清除一下浏览器的缓存,这样服务器启动时,不会报上面的错误。我也不太懂是为啥。
使用Shiro启动服务器时出现错误,常见原因是Shiro的DefaultWebSessionManager类中默认Cookie名称JSESSIONID与servlet容器名冲突,导致登录会话丢失。虽指定不冲突的sessionID仍报错,清除浏览器缓存可解决,但不清楚具体原因。
1万+

被折叠的 条评论
为什么被折叠?



