挑战:捕获 JAX-WS Web 服务交换的原始 XML 请求和响应,而无需
解决方案:
幸运的是,JAX-WS 提供了一种简单的机制来启用上述 XML 通信的日志记录。这可以通过在代码中设置系统属性来完成。
<code class="java">System.setProperty("com.sun.xml.ws.transport.http.client.HttpTransportPipe.dump", "true"); System.setProperty("com.sun.xml.internal.ws.transport.http.client.HttpTransportPipe.dump", "true"); System.setProperty("com.sun.xml.ws.transport.http.HttpAdapter.dump", "true"); System.setProperty("com.sun.xml.internal.ws.transport.http.HttpAdapter.dump", "true"); System.setProperty("com.sun.xml.internal.ws.transport.http.HttpAdapter.dumpTreshold", "999999");</code>
通过设置这些属性,您可以将所有 XML 通信记录到控制台。请注意,建议设置所有四个属性,以便与不同的库兼容。
这使开发人员可以轻松检查其 Web 服务交换的 XML 消息,为故障排除和性能分析提供宝贵的见解。这是一个轻量级的解决方案,可以避免使用 Axis 或 CXF 等更复杂的框架带来的开销。
以上是如何在没有代理的情况下监视 JAX-WS Web 服务中的 XML 通信?的详细内容。更多信息请关注PHP中文网其他相关文章!