|
Hi all,
after playing a bit with services, I found a small WSDL problem, I tried
to fix, but I can't find the real source, so maybe someone can give me a
hint:
- create a service, using e.g.
<auto-attributes "PostalAddress" include="all" optional="true">
<override name="address1" optional="false">
- export this service, open WSDL in webbrowser, look at the
'serviceNameRequest' Part:
[...]
<wsdl:part name="address1" type="xsd:string"/>
<wsdl:part name="address2" type="xsd:string"/>
<wsdl:part name="directions" type="xsd:string"/>
<wsdl:part name="city" type="xsd:string"/>
[... lots of attributes deleted ...]
<wsdl:part name="address1" type="xsd:string"/>
[...]
now, I looked through the code, and found:
framework/service/src/org/ofbiz/service/ModelService.java:
ModelService.getWSDL calls this.getParameterNames(IN_PARAM, true, false)
which returns all parameters including optionals (second parameter),
excluding internal parameters (third param)
changing that to return only required parameters, lists address1 two
times, too.
removing the override xml tag, removes the duplicate address1.
Any hints, where this may go wrong?
Thanks,
Roland
|