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

Reply via email to