使用Fiddler在localhost上捕获SOAP消息

时间:2012-11-04 14:31:14

标签: http soap fiddler

当我的Java客户端向本地Tomcat实例发出SOAP请求时,我无法捕获本地HTTP流量。

我当前的配置

  • Tomcat实例 - 在localhost:8080上运行
  • 本地Java客户端 - 从Windows cmd行运行
  • Fiddler - 在localhost:8888上运行

我使用Axis2 wsdl2java来创建我的客户端SOAP存根,并在指定WSDL(托管在Tomcat上)时使用我的机器IP地址

wsdl2java -uri http://192.168.0.5:8080/axis2/services/Version?wsdl -p sample.axisversion -d adb -s

因此,生成的代码在整个过程中都有这样的行:

  public VersionStub(org.apache.axis2.context.ConfigurationContext configurationContext) throws org.apache.axis2.AxisFault {
    this(configurationContext,"http://192.168.0.5:8080/axis2/services/Version.VersionHttpSoap12Endpoint/" );
}

我的客户端应用程序使用生成的存根,我使用以下代码将Java代理设置为Fiddler(在实际使用SOAP存根之前调用它):

System.getProperties().put("proxySet", "true");
System.getProperties().put("proxyHost", "localhost");
System.getProperties().put("proxyPort", "8888");

...但我仍然没有在Fiddler中看到任何请求或响应流量。有什么遗漏?

1 个答案:

答案 0 :(得分:0)

而不是localhost,请尝试使用ipv4.fiddler,以确保您的localhost流量通过fiddler。另见:http://www.fiddler2.com/Fiddler/Help/hookup.asp#Q-LocalTraffic