关于在appfuse中所应用的FilterChainProxy介绍

   FilterChainProxy(net.sf.acegisecurity.util.FilterChainProxy)是acegi的一个类,具网友讲acegi真的超级难用。但是通过使用acegi我们可以用spring aop直接对service bean的每一个method做权限管理。

   这次我们讲的主要是FilterChainProxy这个类在spring中的应用。首先在这个类中包含的一个方法setApplicationContext(org.springframework.context.ApplicationContext  applicationContext)
这个方法首先对web.xml中所定义的applicationContext进行加载. FilterChainProxy的应用要依赖于acegi的另外一个Bean就是 FilterToBeanProxy,需要在web.xml中进行声明:

 
   
        securityFilter
        net.sf.acegisecurity.util.FilterToBeanProxy
       
            targetClass
            net.sf.acegisecurity.util.FilterChainProxy
       

   

然后在Filter-mappping中指定所需要过滤的文件

 
        securityFilter
        /*
   

值得注意的是需要在ApplicationContext中需要进行如下配置:

   
   
       
           
                CONVERT_URL_TO_LOWERCASE_BEFORE_COMPARISON
                PATTERN_TYPE_APACHE_ANT
                /j_security_check*=httpSessionContextIntegrationFilter,authenticationProcessingFilter
                /**/*.html*=httpSessionContextIntegrationFilter,remoteUserFilter,anonymousProcessingFilter,securityEnforcementFilter
                /**/*.jsp*=httpSessionContextIntegrationFilter,remoteUserFilter,securityEnforcementFilter
           

       

   

否则在启动时会出现异常。

你可能感兴趣的:(WebWork2,Appfuse)