我想使用"全局"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
。
查看Jboss/server/default/deploy/jboss-web.deployer/conf/web.xml
。甚至还有一个全局CommonHeadersFilter的例子。
但是您必须将代码放在JBoss/server/default/lib
下的某个jar中。JBoss无法在web容器的初始化过程中查看战争中的代码。
如果类文件丢失,只需在中构建即可。warundermyapp包中应该有一个名为StatisticsFilterHitCount的类,它实现Filter接口,覆盖
doFilter(ServletRequest request, ServletResponse response, FilterChain filterChain) throws ServletException, IOException
init(FilterConfig filterConfig)
public void destroy()
做任何该做的事。检查一下。