1

I've some strange problems with a web service. One problem is that I don't fully understand how SOAP works.

It seems that it is possible that two different application can connect to e.g. 127.0.0.1:8000 at least that seems possible with the code that is generated with the .NET WSDL tool. But IMO only one application is allowed to bind to a port and listen to HTTP responses. Do the .NET classes do something silently?

For a tiny test I tried to do everything on my own with the HttpWebRequest class to see where the problem is. I get some 500 StatusMessages from the Webserver that the EndpointDistpacher is unable to find an AddressFilter (I think it's probably an .NET exception for the server transfered over HTTP). I copied the SOAP request from another client that works. What I here do not understand. Does the server probably open another new connection to the client, instead of answer to the already open connection?

I don't seek direct answers for my problems. What I really wonder how TCP/HTTP is used in the background for raw SOAP and for WS-Adressing. And what I've to do, to create a simple stupid client, assuming that I only have a TCP/HTTP class.

  • `at least that seems possible with the code that is generated with the .NET WSDL tool` could you elaborate on this statement a bit? By the way web services can be thought of as web pages that require special requests and reply in a special format (special is SOAP in this case), but everything else is just the same behind... Restful webservices go one step further: those that implement GET reuqests, can in fact be triggered using simple browsers too - however, the return format can be of special type... – ppeterka Jan 18 '13 at 10:10
  • I've one tool that has a service at http://127.0.0.1:8005/Alpha and one that runs a service on http://127.0.0.1:8005/Beta. The code is generated by the WSDL tool. Why can both services run at the same time in different processes? When I go to that URL with the firefox, the Webserver is available when one of tool is started and it's url. The second URL is available (same address:port) when I start the second tool. – Dyapsyd Dyspayd Jan 18 '13 at 10:13
  • What is "tool"? How do you start the processes? – ppeterka Jan 18 '13 at 10:20
  • Just two GUI applications, where I don't have the source code. But I can write my own application and the behaviour is the same. But as I said, I more wonder about the details not about my problem. E.g. if the client open exact one connection and the server has to always response through that connection. Of if WS-Adressing is used, the client needs a Server to receive the response. – Dyapsyd Dyspayd Jan 18 '13 at 10:23
  • @DyapsydDyspayd Do you mean you have two different services running on the same port and you want to know how this is possible and how it is possible for a client to get the right one? – Jim Jeffries Jan 18 '13 at 11:24
  • Yes that's one question, why two services von can run on the same port in different processes. The client get the right one because of the URL I guess. – Dyapsyd Dyspayd Jan 18 '13 at 11:55

0 Answers0