在SOAP Web服务中,每个HTTP请求或响应都封装了一个SOAP信封,使用Eclipse IDE(内置的“ TCP / IP监视器 ”工具)可以轻松跟踪这些消息。 这个想法是在客户端和服务器之间托管另一个服务器,以执行端口转发功能来拦截HTTP通信。
1.普通的SOAP信封流
在普通的SOAP服务中,客户端向服务器发送HTTP请求,然后服务器直接向客户端发送HTTP响应。
1. Client ----> SOAP envelope ----> Server:9999
2. Server:9999 ----> SOAP envelope ---> Client
2.拦截的SOAP信封流
要拦截SOAP信封,您可以在客户端和服务器之间托管另一个服务器(“ TcpMonitorServer”),请参阅新流程:
1. Client ----> SOAP envelope ----> TcpMonitorServer:8888
2. TcpMonitorServer:8888 --> SOAP envelope ---> Server:9999
3. Server:9999 ----> SOAP envelope ---> TcpMonitorServer:8888
4. TcpMonitorServer:8888 ----> SOAP envelope ---> Client
注意
此方法所需的端口在您的Web服务客户端中已更改。
Eclipse IDE + TCP / IP监视器
Eclipse IDE附带了一个非常易于使用的流量拦截器工具,称为“ TCP / IP Monitor ”。 在本教程中,我们向您展示如何在Eclipse IDE中启用此“ TCP / IP Monitor”,以及如何拦截由Web服务生成的SOAP消息。
以下是在Eclispe IDE中启用“ TCP / IP监视器”的步骤。
1.在IDE中,访问Windows –> 首选项 –> 运行/调试 –> TCP / IP监视器
2.填写服务器信息,然后选择type =“ TCP / IP ”
3.单击“开始”按钮以开始跟踪Web服务流量。
4.如果有,请在“ TCP / IP监视器”视图中显示跟踪的消息。
注意
您可以复制此JAX-WS Web服务示例并自己进行测试。
对于Netbean用户
在Netbean IDE中,可以使用TCP监视器来跟踪SOAP消息。
翻译自: https://mkyong.com/webservices/jax-ws/how-to-trace-soap-message-in-eclipse-ide/