3

我想使用“全局”HTTP 过滤器。

因此,我编辑deploy/jboss-web.deployer/conf/web.xml并添加了:

<filter>
    <filter-name>StatisticsFilterHitCount</filter-name>
    <filter-class>myapp.StatisticsFilterHitCount</filter-class>
</filter>

<filter-mapping>
    <filter-name>StatisticsFilterHitCount</filter-name>
    <url-pattern>/*</url-pattern>
</filter-mapping>

现在,当我启动服务器时,无法部署单个工件。每次部署尝试都会记录一个巨大的异常。抱歉,这里不能粘贴。我想,在部署时,过滤器类还不存在。

那么,我必须在哪里(以及如何)在全球范围内部署这样的过滤器?

目前,它在applications/5apps,包装是.war

4

2 回答 2

3

Jboss/server/default/deploy/jboss-web.deployer/conf/web.xml。甚至还有一个全局 CommonHeadersFilter 的示例。

但是您必须将代码放在 .jar 下的某个 jar 中JBoss/server/default/lib。JBoss 无法在 web 容器的初始化过程中窥视战争中的代码。

于 2012-01-11T06:44:30.543 回答
1

如果类文件丢失,只需在 . 在 myapp 包下的 war 中应该有一个名为 StatisticsFilterHitCount 的类,它实现了 Filter 接口,覆盖

           doFilter(ServletRequest request, ServletResponse response, FilterChain filterChain) throws ServletException, IOException 

           init(FilterConfig filterConfig)

           public void destroy()

并做它应该做的任何事情。检查这个。

于 2012-01-10T08:34:45.970 回答