BindingOutput bindingOutput = bindingOperation.getBindingOutput();
List<SoapHeader> headers = bindingOutput == null ? new ArrayList<SoapHeader>() : WsdlUtils
.getSoapHeaders(bindingOutput.getExtensibilityElements());
for (int i = 0; i < headers.size(); i++) {
SoapHeader header = headers.get(i);
Message message = wsdlContext.getDefinition().getMessage(header.getMessage());
if (message == null) {
log.error("Missing message for header: " + header.getMessage());
continue;
}
javax.wsdl.Part part = message.getPart(header.getPart());
if (part != null) {
SchemaType schemaType = WsdlUtils.getSchemaTypeForPart(wsdlContext, part);
SchemaGlobalElement schemaElement = WsdlUtils.getSchemaElementForPart(wsdlContext, part);
if (schemaType != null) {
result.add(new WsdlHeaderPart(part.getName(), schemaType, part.getElementName(), schemaElement));
}
} else {
log.error("Missing part for header; " + header.getPart());
}
}
// content parts
javax.wsdl.Part[] parts = WsdlUtils.getOutputParts(bindingOperation);