diff options
Diffstat (limited to 'sca-java-1.x/trunk/modules/binding-ws-wsdlgen/src/main/java/org/apache')
-rw-r--r-- | sca-java-1.x/trunk/modules/binding-ws-wsdlgen/src/main/java/org/apache/tuscany/sca/binding/ws/wsdlgen/Interface2WSDLGenerator.java | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/sca-java-1.x/trunk/modules/binding-ws-wsdlgen/src/main/java/org/apache/tuscany/sca/binding/ws/wsdlgen/Interface2WSDLGenerator.java b/sca-java-1.x/trunk/modules/binding-ws-wsdlgen/src/main/java/org/apache/tuscany/sca/binding/ws/wsdlgen/Interface2WSDLGenerator.java index a55670ef86..542517182c 100644 --- a/sca-java-1.x/trunk/modules/binding-ws-wsdlgen/src/main/java/org/apache/tuscany/sca/binding/ws/wsdlgen/Interface2WSDLGenerator.java +++ b/sca-java-1.x/trunk/modules/binding-ws-wsdlgen/src/main/java/org/apache/tuscany/sca/binding/ws/wsdlgen/Interface2WSDLGenerator.java @@ -344,7 +344,8 @@ public class Interface2WSDLGenerator { // call each helper in turn to populate the wsdl.types element XmlSchemaCollection schemaCollection = new XmlSchemaCollection(); - for (Map.Entry<XMLTypeHelper, List<DataType>> en: getDataTypes(interfaze, false, helpers).entrySet()) { + // TUSCANY-3298: enable JAXB wrapper generation + for (Map.Entry<XMLTypeHelper, List<DataType>> en: getDataTypes(interfaze, true, helpers).entrySet()) { XMLTypeHelper helper = en.getKey(); if (helper == null) { continue; @@ -1112,6 +1113,11 @@ public class Interface2WSDLGenerator { dataType.getLogical()); ElementInfo element = new ElementInfo(name, typeInfo); element.setMany(byte[].class != javaType && javaType.isArray()); + // TUSCANY-3298: Check the "many" flag set by databinding introspection + Object logical = dataType.getLogical(); + if (logical instanceof XMLType && ((XMLType)logical).isMany()) { + element.setMany(true); + } element.setNillable(!javaType.isPrimitive()); return element; } |