shiro 无法获得ServletContext

用了apache-shiro以后,偶然发现servlet环境下(我开发时用的servlet3.0) HttpSession.getServletContext() 一直返回的是null
查看了ShiroHttpSession实现类的源代码,结合shiro官方文档。发现修改web.xml可以解决这个问题。

Xml代码  收藏代码
http://yingzhuo.iteye.com/blog/2001607
http://124444154-qq-com.iteye.com/blog/1832650

<?xml version="1.0" encoding="UTF-8"?> 
<web-app xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" 
    version="3.0"> 
 
    <!-- apache-shiro 核心拦截器 --> 
    <filter> 
        <filter-name>shiroFilter</filter-name> 
        <filter-class>org.springframework.web.filter.DelegatingFilterProxy</filter-class> 
        <init-param> 
            <param-name>targetFilterLifecycle</param-name> 
            <param-value>true</param-value> 
        </init-param> 
    </filter> 
    <filter-mapping> 
        <filter-name>shiroFilter</filter-name> 
        <url-pattern>/*</url-pattern> 
    </filter-mapping> 
</web-app> 


:)

猜你喜欢

转载自endual.iteye.com/blog/2266321