Hi, I'm attempting to learn the TCP Monitor tool to help debug a web service application that I am writing using the Axis toolkit. I wrote a sample client that accesses the getTemp method at services.xmethods.net. When run like this it works fine.
/* code snippet */ String endpoint = "http://services.xmethods.net/soap/servlet/rpcrouter"; Service service = new Service(); Call call = (Call) service.createCall(); call.setTargetEndpointAddress(new URL(endpoint)); Float temp = (Float)call.invoke("urn:xmethods-Temperature", "getTemp", new Object[] {args[0]}); System.out.println("Temp for ZipCode: " + args[0] + " is: " + temp.floatValue()); /* end of code snippet */ I want to run it through tcpmon so I setup tcpmon on my localhost at port 6072 and forward it to services.xmethods.net. I change the endpoint to the following: String endpoint = "http://localhost:6072/soap/servlet/rpcrouter"; When I rerun the program I see the attempt in tcpmon, but it fails as a bad DNS lookup. If I look at the header info in the request it has: POST /soap/servlet/rpcrouter HTTP/1.0 Content-Length: 453 Host: localhost ... Which obviously should fail. If I replace localhost with services.xmethods.net and resend it works fine. I'm sure I'm setting up tcpmon wrong, but I've tried to use the HTTP Proxy Support field and a number of other combinations, but I can't seem to get it to work. Any help would be greatly appreciated. Thanks, Mike
