summaryrefslogtreecommitdiffstats
path: root/sca-java-1.x/trunk/modules/binding-ws-wsdlgen/src/main/java/org/apache/tuscany/sca/binding/ws/wsdlgen/Interface2WSDLGenerator.java
diff options
context:
space:
mode:
Diffstat (limited to 'sca-java-1.x/trunk/modules/binding-ws-wsdlgen/src/main/java/org/apache/tuscany/sca/binding/ws/wsdlgen/Interface2WSDLGenerator.java')
-rw-r--r--sca-java-1.x/trunk/modules/binding-ws-wsdlgen/src/main/java/org/apache/tuscany/sca/binding/ws/wsdlgen/Interface2WSDLGenerator.java8
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;
}