Hello, I am trying to determine what the value of (wsdl)soap:address attribute should be, and to what extent that value is supposed to reflect the real URL at which the corresponding service is avaliable.
In a WSDL, the following sample section describes a service itself: <wsdl:service name="SomeService"> <wsdl:port name="SomePort" binding="impl:SomeBinding"> <wsdlsoap:address location="http://companyname.com/services/SomeService"/> </wsdl:port> </wsdl:service> Until today, the value I've been putting in the wsdlsoap:address attribute looked like http://companyname.com/services/SomeService , and in fact the service was available at a different address (for instance, https://projectname.companyname.com/services/SomeService) Notice that both domain name and protocol are different. This served fine for me, since I have dev/staging/production enviroments deployed at different domains, and some of them do not require SSL. Having a single fake URL in wsdlsoap:location allowed me to have a single WSDL for all different environments. In addition, neither of SOAP request or response in fact contain the wsdlsoap:address URL. One of the users, however, has recently complained that the WSDL is incorrect because the endpoint value is fake, and that only by having wsdlsoap:address attribute pointing at a real physical service endpoint that user could connect to it. The only description for the this element I could find in the WSDl spec was this: "The SOAP address binding is used to give a port an address (a URI). A port using the SOAP binding MUST specify exactly one address. The URI scheme specified for the address must correspond to the transport specified by the soap:binding." My question is, shall the value of that attribute reflect the actual endpoint URL? What about the protocol (http/https)? It kind of makes sence that it would on one hand; on the other, I think that aside from the inconviniences described above it might create a conflict of responsibilities: WSDL, that is supposed to be designed by a developer and describe in what way what services can be accessed, would contain a concrete deployment endpoint that is up to the IS to define and maintain? With Axis 1.2, I dont see any effect the value of wsdlsoap:address has on service accessibility or speficics of accessing it. What am I missing? Should a real endpoint be placed into WSDL? Some of the client SOAP tools seem to attempt to use the soap:address tag value as the endpoint URL; is that a valid point? Thanks Bogdan