If I understand correctly in a WSDL document, we can say in simple terms that:
portype section:can be compared to an interface in a OO
language,and describes the operation offered by the service.binding section:specifies wich protocols the operation can be accessed through
(e.g. SMTP,HTTP,etc).services section:indicates an endpoint for each of the bindings defined.
Please, correct me if I'm saying something wrong.
If that is correct, when we create a client using AXIS ADB and Eclipse EE integrated AXIS tools, why do we also need to supply an URL as the endpoint of the service when instantiating the stub ?
MultiplierImplStub stub=newMultiplierImplStub("http://localhost:8080/ProductServer/services/MultiplierImpl");
Shouldn't the stub, wich is automatically built parsing the WSDL of the service, already know what the endpoints are ?
EDIT:
And why the endpoint specified in the client does not match any of the endpoints defined in the WSDL ?
<wsdl:service name="MultiplierImpl">
<wsdl:port name="MultiplierImplHttpSoap11Endpoint" binding="ns:MultiplierImplSoap11Binding">
<soap:address location="http://localhost:8080/AxisTestProjectServer/services/MultiplierImpl.MultiplierImplHttpSoap11Endpoint/"/>
</wsdl:port>
<wsdl:port name="MultiplierImplHttpSoap12Endpoint" binding="ns:MultiplierImplSoap12Binding">
<soap12:address location="http://localhost:8080/AxisTestProjectServer/services/MultiplierImpl.MultiplierImplHttpSoap12Endpoint/"/>
</wsdl:port>
<wsdl:port name="MultiplierImplHttpEndpoint" binding="ns:MultiplierImplHttpBinding">
<http:address location="http://localhost:8080/AxisTestProjectServer/services/MultiplierImpl.MultiplierImplHttpEndpoint/"/>
</wsdl:port>
</wsdl:service>