QName type = null;
if (logical instanceof XMLType) {
((XMLType)logical).setElementName(element);
type = ((XMLType)logical).getTypeName();
}
inputElements.add(new ElementInfo(element, new TypeInfo(type, false, null)));
if (param != null) {
parameterModes.set(i, getParameterMode(parameterTypes[i], param.mode()));
} else {
parameterModes.set(i, getParameterMode(parameterTypes[i], null));
}
}
List<ElementInfo> outputElements = new ArrayList<ElementInfo>();
WebResult result = method.getAnnotation(WebResult.class);
// Default to "" for doc-lit-wrapped && non-header
ns = result != null ? result.targetNamespace() : "";
ns = getValue(ns, documentStyle && (result == null || !result.header()) ? "" : tns);
name = result != null ? result.name() : "";
name = getValue(name, "return");
QName element = new QName(ns, name);
if (operation.getOutputType() != null) {
Object logical = operation.getOutputType().getLogical();
QName type = null;
if (logical instanceof XMLType) {
((XMLType)logical).setElementName(element);
type = ((XMLType)logical).getTypeName();
}
outputElements.add(new ElementInfo(element, new TypeInfo(type, false, null)));
}
String db = inputWrapperDT != null ? inputWrapperDT.getDataBinding() : JAXB_DATABINDING;
WrapperInfo inputWrapperInfo = new WrapperInfo(db, new ElementInfo(inputWrapper, null), inputElements);
WrapperInfo outputWrapperInfo =
new WrapperInfo(db, new ElementInfo(outputWrapper, null), outputElements);
inputWrapperInfo.setWrapperType(inputWrapperDT);
outputWrapperInfo.setWrapperType(outputWrapperDT);
operation.setInputWrapper(inputWrapperInfo);