Details
Description
In createMessageParts(MessagePartContainer info, Message msg) in org.codehaus.xfire.wsdl11.parser.WSDLServiceBuild there is the following code snippets:
QName typeName = entry.getTypeName();
if (typeName != null)
// We've got a concrete schema type
QName elementName = entry.getElementName();
if (elementName != null)
Inside of both of the if tests, info.addMessage is called with the name of the schema type rather than the name of the part itself. When using the dynamic client calling an operation that lookes like this:
<wsdl:message name="getBatchDetailsRequest">
<wsdl:part name="localId" type="xsd:string" />
<wsdl:part name="trdProperties" type="xsd:boolean" />
<wsdl:part name="propertyLog" type="xsd:boolean" />
<wsdl:part name="stationList" type="xsd:boolean" />
<wsdl:part name="transList" type="xsd:boolean" />
</wsdl:message>
I get an error saying that there is no part named "string".
The code in WSDLServiceBuilder should should probably look like this:
// We're extending an abstract schema type
QName typeName = entry.getTypeName();
if (typeName != null)
// We've got a concrete schema type
QName elementName = entry.getElementName();
if (elementName != null)
Thanks, but I fixed this in SVN two days ago
Try the SNAPSHOT on the download page - it should have the fix in it.