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.


Reply via email to