在JBoss7中创建一个全局过滤器

在JBoss7中创建一个全局过滤器,jboss,jboss7.x,servlet-filters,Jboss,Jboss7.x,Servlet Filters,我想创建一个全局自定义筛选器,用于捕获(用于检查/修改等)服务器上所有web应用程序的http头。 我试图在standalone.xml中将我的过滤器作为全局模块应用,但它不起作用 <subsystem xmlns="urn:jboss:domain:ee:1.1"> <spec-descriptor-property-replacement>false</spec-descriptor-property-replacement>

我想创建一个全局自定义筛选器,用于捕获(用于检查/修改等)服务器上所有web应用程序的http头。 我试图在standalone.xml中将我的过滤器作为全局模块应用,但它不起作用

<subsystem xmlns="urn:jboss:domain:ee:1.1">  
            <spec-descriptor-property-replacement>false</spec-descriptor-property-replacement>  
            <jboss-descriptor-property-replacement>true</jboss-descriptor-property-replacement>  
            <global-modules>  
                 <module name="com.myfilter.filter" slot="main"/>  
            </global-modules>  
</subsystem>  

假的
真的

请帮帮我

全局模块将只向全局类路径添加某些内容,而不会将其用于请求

您的请求超出了JavaEE规范。一些服务器支持这样的功能,作为规范的扩展。Tomcat和JBoss使用Valves提供了这样的扩展支持。您应该能够实现,将其作为模块安装,然后将其配置为JBoss,如:


. . . .

全局过滤器最初未包含在AS7中。它仅限于应用程序级别(例如每个应用程序jboss-web.xml)。我不记得添加了哪个版本,也许可以尝试7.3或wildfly8。
<subsystem xmlns="urn:jboss:domain:web:1.4" default-virtual-server="default-host" native="false">
    <valve name="myvalve" module="org.jboss.web-valves" class-name="org.apache.catalina.valves.AccessLogValve">
        <param param-name="prefix" param-value="catalina_access_log."/>
        <param param-name="suffix" param-value=".txt"/>
    </valve>
            . . . .
</subsystem>