for (WSDLSOAPHeader header : bindingOutput.getSoapHeaders())
{
String partName = header.getPartName();
QName xmlName = header.getElement();
ParameterMetaData outMetaData = opMetaData.getParameter(xmlName);
if (outMetaData != null)
{
outMetaData.setMode(ParameterMode.INOUT);
}
else
{
QName xmlType = lookupSchemaType(wsdlOperation, xmlName);
ParameterMetaData pmd = buildOutputParameter(opMetaData, wsdlOperation, seiMethodMapping, wsdlPosition, partName, xmlName, xmlType, typeMapping, !header
.isIncludeInSignature());
if (pmd != null)
{
pmd.setInHeader(true);
if (opMetaData.getReturnParameter() != pmd)
wsdlPosition++;
}
}
}
for (WSDLMIMEPart mimePart : bindingOutput.getMimeParts())
{
String partName = mimePart.getPartName();
QName xmlName = new QName(partName);
ParameterMetaData outMetaData = opMetaData.getParameter(xmlName);
if (outMetaData != null)
{
outMetaData.setMode(ParameterMode.INOUT);
}
else
{
QName xmlType = mimePart.getXmlType();
ParameterMetaData pmd = buildOutputParameter(opMetaData, wsdlOperation, seiMethodMapping, wsdlPosition, partName, xmlName, xmlType, typeMapping, false);
pmd.setSwA(true);
pmd.setMimeTypes(mimePart.getMimeTypes());
if (opMetaData.getReturnParameter() != pmd)
wsdlPosition++;
}
}