我需要实现过滤器或侦听器之类的东西,以拦截 HTTP 请求并检索 HTTP 标头以用于各种目的。
我使用 Java、Jboss 应用服务器和 Web 服务。我希望在调用 Web 服务之前执行此过滤系统 - 正在考虑方面,但它们不包含与 HTTP 相关的内容。过滤后,应进行服务调用。
Jax-WS 处理程序也不适合我,因为它们只保存 SOAP 有效负载。
有任何想法吗?
提前致谢。
我需要实现过滤器或侦听器之类的东西,以拦截 HTTP 请求并检索 HTTP 标头以用于各种目的。
我使用 Java、Jboss 应用服务器和 Web 服务。我希望在调用 Web 服务之前执行此过滤系统 - 正在考虑方面,但它们不包含与 HTTP 相关的内容。过滤后,应进行服务调用。
Jax-WS 处理程序也不适合我,因为它们只保存 SOAP 有效负载。
有任何想法吗?
提前致谢。
你不能创建一个 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);
}