1

我需要实现过滤器或侦听器之类的东西,以拦截 HTTP 请求并检索 HTTP 标头以用于各种目的。

我使用 Java、Jboss 应用服务器和 Web 服务。我希望在调用 Web 服务之前执行此过滤系统 - 正在考虑方面,但它们不包含与 HTTP 相关的内容。过滤后,应进行服务调用。

Jax-WS 处理程序也不适合我,因为它们只保存 SOAP 有效负载。

有任何想法吗?

提前致谢。

4

2 回答 2

3

你不能创建一个 servlet 过滤器来拦截所有进入你的 web 服务引擎的请求吗?如果您正在使用 Axis 或任何其他 SOAP 引擎,我希望您应该能够创建一个过滤器来拦截所有到达 SOAP 引擎提供的主 servlet 的请求。

 public void doFilter(ServletRequest request,ServletResponse response,FilterChain chain) throws IOException,ServletException
  {
    HttpServletRequest httpRequest=(HttpServletRequest)request;
    HttpServletResponse httpResponse=(HttpServletResponse)response;
       Enumeration headerNames = httpRequest.getHeaderNames();
        while(headerNames.hasMoreElements()) {
          String headerName = (String)headerNames.nextElement();
          out.println(headerName);
          out.println(request.getHeader(headerName));
        }
       chain.doFilter(request,response);
}
于 2010-09-28T19:34:14.530 回答
0

使用libpcap和 Java 接口jNetPcap

于 2010-09-28T19:29:59.030 回答