Again,
In AbstractEndpointFactory around line 181, we hard coded the
transportId to transportId = "http://schemas.xmlsoap.org/wsdl/soap/";
Which is not ok when it's SOAP12, in which case, it should be
transportId = "http://schemas.xmlsoap.org/wsdl/soap12/";
I will remove this line, and fix the following testcases:
ReflectionServiceFactoryTest
ClientFactoryBeanTest
in these two tests, we use set "http://schemas.xmlsoap.org/soap/http"
as the transportId, which i think should be changed to
http://schemas.xmlsoap.org/wsdl/soap/
We really need to put the namespaces into one place.
Let me know if I'm wrong.
James.
James Mao wrote:
I can see a lot of hard coded namespace in
AbstractEndpointFactory/SOAPBindingFactory/ServerWSDLBuilder, i think
we should put those in one place
I don't know what's "http://schemas.xmlsoap.org/soap/" means
In AbstractEndpointFactory it's binding, but in SoapTransportFactory
it's transportid
From the java2wsdl we used the AbstractEndpointFactory, from the
generated wsdl, i can see lots of namespace in definition, some of
them can be removed
e.g xmlns:soap="http://schemas.xmlsoap.org/soap/", i don't know what
is it, seems never used in the whole wsdl.
Whatever soap version we used, we put both soap11/soap12 namespaces
in definition.
I will add the build(HashSet<String, String> ns) to
ServiceWSDLBuilder, after that we don't need hard code the namespaces
in ServiceWSDLBuilder
Cheers,
James.