<!-- Shiro的Web過濾器 --> <bean id="shiroFilter" class="org.apache.shiro.spring.web.ShiroFilterFactoryBean"> <property name="securityManager" ref="securityManager"/> </bean> <bean class="org.springframework.beans.factory.config.MethodInvokingFactoryBean"> <property name="targetObject" ref="shiroFilter"/> <property name="targetMethod" value="setFilterChainResolver"/> <property name="arguments" ref="filterChainResolver"/> </bean>
改為
@Bean public ShiroFilterFactoryBean shiroFilterFactoryBean() throws Exception{ ShiroFilterFactoryBean bean = new ShiroFilterFactoryBean(); bean.setSecurityManager(securityManager()); AbstractShiroFilter shiroFilter = (AbstractShiroFilter)bean.getObject(); shiroFilter.setFilterChainResolver(pathMatchingFilterChainResolver()); return bean; }
就可以解決,具體到底哪里的錯我也沒搞懂。
spring集成shiro的具體方案,請看開濤大神的博客:http://jinnianshilongnian.iteye.com/blog/2040929
