You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-dev@axis.apache.org by ve...@apache.org on 2010/01/23 14:52:22 UTC
svn commit: r902404 - in /webservices/axis2/trunk/java/modules:
integration/test-resources/BaseDataTypes.wsdl
integration/test-resources/generics/generics.wsdl
kernel/src/org/apache/axis2/description/java2wsdl/DefaultSchemaGenerator.java
Author: veithen
Date: Sat Jan 23 13:52:22 2010
New Revision: 902404
URL: http://svn.apache.org/viewvc?rev=902404&view=rev
Log:
Temporarily reverted r896798 (related to AXIS2-3300) because the change causes a build failure in the integration module (org.tempuri.complex.ComplexDataTypesTest).
Modified:
webservices/axis2/trunk/java/modules/integration/test-resources/BaseDataTypes.wsdl
webservices/axis2/trunk/java/modules/integration/test-resources/generics/generics.wsdl
webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/description/java2wsdl/DefaultSchemaGenerator.java
Modified: webservices/axis2/trunk/java/modules/integration/test-resources/BaseDataTypes.wsdl
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/integration/test-resources/BaseDataTypes.wsdl?rev=902404&r1=902403&r2=902404&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/integration/test-resources/BaseDataTypes.wsdl (original)
+++ webservices/axis2/trunk/java/modules/integration/test-resources/BaseDataTypes.wsdl Sat Jan 23 13:52:22 2010
@@ -25,312 +25,308 @@
<xs:element name="retBool">
<xs:complexType>
<xs:sequence>
- <xs:element name="inBool" type="xs:boolean"/>
+ <xs:element minOccurs="0" name="inBool" type="xs:boolean"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="retBoolResponse">
<xs:complexType>
<xs:sequence>
- <xs:element name="return" type="xs:boolean"/>
+ <xs:element minOccurs="0" name="return" type="xs:boolean"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="retSByte">
<xs:complexType>
<xs:sequence>
- <xs:element name="inSByte" nillable="true" type="xs:byte"/>
+ <xs:element minOccurs="0" name="inSByte" nillable="true" type="xs:byte"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="retSByteResponse">
<xs:complexType>
<xs:sequence>
- <xs:element name="return" nillable="true" type="xs:byte"/>
+ <xs:element minOccurs="0" name="return" nillable="true" type="xs:byte"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="retByteArray">
<xs:complexType>
<xs:sequence>
- <xs:element name="inByteArray" nillable="true" type="xs:base64Binary"/>
+ <xs:element minOccurs="0" name="inByteArray" nillable="true" type="xs:base64Binary"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="retByteArrayResponse">
<xs:complexType>
<xs:sequence>
- <xs:element name="return" nillable="true" type="xs:base64Binary"/>
+ <xs:element minOccurs="0" name="return" nillable="true" type="xs:base64Binary"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="retDouble">
<xs:complexType>
<xs:sequence>
- <xs:element name="inDouble" type="xs:double"/>
+ <xs:element minOccurs="0" name="inDouble" type="xs:double"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="retDoubleResponse">
<xs:complexType>
<xs:sequence>
- <xs:element name="return" type="xs:double"/>
+ <xs:element minOccurs="0" name="return" type="xs:double"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="retFloat">
<xs:complexType>
<xs:sequence>
- <xs:element name="inFloat" type="xs:float"/>
+ <xs:element minOccurs="0" name="inFloat" type="xs:float"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="retFloatResponse">
<xs:complexType>
<xs:sequence>
- <xs:element name="return" type="xs:float"/>
+ <xs:element minOccurs="0" name="return" type="xs:float"/>
</xs:sequence>
</xs:complexType>
</xs:element>
-
<xs:element name="retSingle">
<xs:complexType>
<xs:sequence>
- <xs:element name="inSingle" type="xs:float"/>
+ <xs:element minOccurs="0" name="inSingle" type="xs:float"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="retSingleResponse">
<xs:complexType>
<xs:sequence>
- <xs:element name="return" type="xs:float"/>
+ <xs:element minOccurs="0" name="return" type="xs:float"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="retChar">
<xs:complexType>
<xs:sequence>
- <xs:element name="inChar" type="xs:int"/>
+ <xs:element minOccurs="0" name="inChar" type="xs:int"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="retCharResponse">
<xs:complexType>
<xs:sequence>
- <xs:element name="return" type="xs:int"/>
+ <xs:element minOccurs="0" name="return" type="xs:int"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="retInt">
<xs:complexType>
<xs:sequence>
- <xs:element name="inInt" type="xs:int"/>
+ <xs:element minOccurs="0" name="inInt" type="xs:int"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="retIntResponse">
<xs:complexType>
<xs:sequence>
- <xs:element name="return" type="xs:int"/>
+ <xs:element minOccurs="0" name="return" type="xs:int"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="retUShort">
<xs:complexType>
<xs:sequence>
- <xs:element name="inUShort" type="xs:int"/>
+ <xs:element minOccurs="0" name="inUShort" type="xs:int"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="retUShortResponse">
<xs:complexType>
<xs:sequence>
- <xs:element name="return" type="xs:int"/>
+ <xs:element minOccurs="0" name="return" type="xs:int"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="retObject">
<xs:complexType>
<xs:sequence>
- <xs:element name="inObject" nillable="true" type="xs:anyType"/>
+ <xs:element minOccurs="0" name="inObject" nillable="true" type="xs:anyType"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="retObjectResponse">
<xs:complexType>
<xs:sequence>
- <xs:element name="return" nillable="true" type="xs:anyType"/>
+ <xs:element minOccurs="0" name="return" nillable="true" type="xs:anyType"/>
</xs:sequence>
</xs:complexType>
</xs:element>
-
<xs:element name="retGuid">
<xs:complexType>
<xs:sequence>
- <xs:element name="inGuid" nillable="true" type="xs:string"/>
+ <xs:element minOccurs="0" name="inGuid" nillable="true" type="xs:string"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="retGuidResponse">
<xs:complexType>
<xs:sequence>
- <xs:element name="return" nillable="true" type="xs:string"/>
+ <xs:element minOccurs="0" name="return" nillable="true" type="xs:string"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="retString">
<xs:complexType>
<xs:sequence>
- <xs:element name="inString" nillable="true" type="xs:string"/>
+ <xs:element minOccurs="0" name="inString" nillable="true" type="xs:string"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="retStringResponse">
<xs:complexType>
<xs:sequence>
- <xs:element name="return" nillable="true" type="xs:string"/>
+ <xs:element minOccurs="0" name="return" nillable="true" type="xs:string"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="retUri">
<xs:complexType>
<xs:sequence>
- <xs:element name="inUri" nillable="true" type="xs:string"/>
+ <xs:element minOccurs="0" name="inUri" nillable="true" type="xs:string"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="retUriResponse">
<xs:complexType>
<xs:sequence>
- <xs:element name="return" nillable="true" type="xs:string"/>
+ <xs:element minOccurs="0" name="return" nillable="true" type="xs:string"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="retDecimal">
<xs:complexType>
<xs:sequence>
- <xs:element name="inDecimal" nillable="true" type="xs:decimal"/>
+ <xs:element minOccurs="0" name="inDecimal" nillable="true" type="xs:decimal"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="retDecimalResponse">
<xs:complexType>
<xs:sequence>
- <xs:element name="return" nillable="true" type="xs:decimal"/>
+ <xs:element minOccurs="0" name="return" nillable="true" type="xs:decimal"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="retULong">
<xs:complexType>
<xs:sequence>
- <xs:element name="inULong" nillable="true" type="xs:integer"/>
+ <xs:element minOccurs="0" name="inULong" nillable="true" type="xs:integer"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="retULongResponse">
<xs:complexType>
<xs:sequence>
- <xs:element name="return" nillable="true" type="xs:integer"/>
+ <xs:element minOccurs="0" name="return" nillable="true" type="xs:integer"/>
</xs:sequence>
</xs:complexType>
</xs:element>
-
<xs:element name="retDateTime">
<xs:complexType>
<xs:sequence>
- <xs:element name="inDateTime" nillable="true" type="xs:dateTime"/>
+ <xs:element minOccurs="0" name="inDateTime" nillable="true" type="xs:dateTime"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="retDateTimeResponse">
<xs:complexType>
<xs:sequence>
- <xs:element name="return" nillable="true" type="xs:dateTime"/>
+ <xs:element minOccurs="0" name="return" nillable="true" type="xs:dateTime"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="retTimeSpan">
<xs:complexType>
<xs:sequence>
- <xs:element name="inTimeSpan" nillable="true" type="xs:anyType"/>
+ <xs:element minOccurs="0" name="inTimeSpan" nillable="true" type="xs:anyType"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="retTimeSpanResponse">
<xs:complexType>
<xs:sequence>
- <xs:element name="return" nillable="true" type="xs:anyType"/>
+ <xs:element minOccurs="0" name="return" nillable="true" type="xs:anyType"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="retQName">
<xs:complexType>
<xs:sequence>
- <xs:element name="inQName" nillable="true" type="xs:anyType"/>
+ <xs:element minOccurs="0" name="inQName" nillable="true" type="xs:anyType"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="retQNameResponse">
<xs:complexType>
<xs:sequence>
- <xs:element name="return" nillable="true" type="xs:anyType"/>
+ <xs:element minOccurs="0" name="return" nillable="true" type="xs:anyType"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="retLong">
<xs:complexType>
<xs:sequence>
- <xs:element name="inLong" type="xs:long"/>
+ <xs:element minOccurs="0" name="inLong" type="xs:long"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="retLongResponse">
<xs:complexType>
<xs:sequence>
- <xs:element name="return" type="xs:long"/>
+ <xs:element minOccurs="0" name="return" type="xs:long"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="retUInt">
<xs:complexType>
<xs:sequence>
- <xs:element name="inUInt" type="xs:long"/>
+ <xs:element minOccurs="0" name="inUInt" type="xs:long"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="retUIntResponse">
<xs:complexType>
<xs:sequence>
- <xs:element name="return" type="xs:long"/>
+ <xs:element minOccurs="0" name="return" type="xs:long"/>
</xs:sequence>
</xs:complexType>
</xs:element>
-
<xs:element name="retByte">
<xs:complexType>
<xs:sequence>
- <xs:element name="inByte" type="xs:short"/>
+ <xs:element minOccurs="0" name="inByte" type="xs:short"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="retByteResponse">
<xs:complexType>
<xs:sequence>
- <xs:element name="return" type="xs:short"/>
+ <xs:element minOccurs="0" name="return" type="xs:short"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="retShort">
<xs:complexType>
<xs:sequence>
- <xs:element name="inShort" type="xs:short"/>
+ <xs:element minOccurs="0" name="inShort" type="xs:short"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="retShortResponse">
<xs:complexType>
<xs:sequence>
- <xs:element name="return" type="xs:short"/>
+ <xs:element minOccurs="0" name="return" type="xs:short"/>
</xs:sequence>
</xs:complexType>
</xs:element>
Modified: webservices/axis2/trunk/java/modules/integration/test-resources/generics/generics.wsdl
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/integration/test-resources/generics/generics.wsdl?rev=902404&r1=902403&r2=902404&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/integration/test-resources/generics/generics.wsdl (original)
+++ webservices/axis2/trunk/java/modules/integration/test-resources/generics/generics.wsdl Sat Jan 23 13:52:22 2010
@@ -13,33 +13,33 @@
<xs:element name="processStringList">
<xs:complexType>
<xs:sequence>
- <xs:element maxOccurs="unbounded" name="values" nillable="true" type="xs:string"/>
+ <xs:element maxOccurs="unbounded" minOccurs="0" name="values" nillable="true" type="xs:string"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="processStringListResponse">
<xs:complexType>
<xs:sequence>
- <xs:element name="return" nillable="true" type="xs:string"/>
+ <xs:element minOccurs="0" name="return" nillable="true" type="xs:string"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="processStringArray">
<xs:complexType>
<xs:sequence>
- <xs:element maxOccurs="unbounded" name="values" nillable="true" type="ns:String"/>
+ <xs:element maxOccurs="unbounded" minOccurs="0" name="values" nillable="true" type="ns:String"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:complexType name="String">
<xs:sequence>
- <xs:element maxOccurs="unbounded" name="array" nillable="true" type="xs:string"/>
+ <xs:element maxOccurs="unbounded" minOccurs="0" name="array" nillable="true" type="xs:string"/>
</xs:sequence>
</xs:complexType>
<xs:element name="processPersonList">
<xs:complexType>
<xs:sequence>
- <xs:element maxOccurs="unbounded" name="persons" nillable="true"
+ <xs:element maxOccurs="unbounded" minOccurs="0" name="persons" nillable="true"
type="ax22:Person"/>
</xs:sequence>
</xs:complexType>
@@ -47,14 +47,14 @@
<xs:element name="processPersonListResponse">
<xs:complexType>
<xs:sequence>
- <xs:element name="return" nillable="true" type="ax22:Person"/>
+ <xs:element minOccurs="0" name="return" nillable="true" type="ax22:Person"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="getStringListResponse">
<xs:complexType>
<xs:sequence>
- <xs:element maxOccurs="unbounded" name="return" nillable="true" type="xs:string"/>
+ <xs:element maxOccurs="unbounded" minOccurs="0" name="return" nillable="true" type="xs:string"/>
</xs:sequence>
</xs:complexType>
</xs:element>
@@ -63,8 +63,8 @@
targetNamespace="http://generics.axis2.apache.org/xsd">
<xs:complexType name="Person">
<xs:sequence>
- <xs:element name="age" type="xs:int"/>
- <xs:element name="name" nillable="true" type="xs:string"/>
+ <xs:element minOccurs="0" name="age" type="xs:int"/>
+ <xs:element minOccurs="0" name="name" nillable="true" type="xs:string"/>
</xs:sequence>
</xs:complexType>
</xs:schema>
Modified: webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/description/java2wsdl/DefaultSchemaGenerator.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/description/java2wsdl/DefaultSchemaGenerator.java?rev=902404&r1=902403&r2=902404&view=diff
==============================================================================
--- webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/description/java2wsdl/DefaultSchemaGenerator.java (original)
+++ webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/description/java2wsdl/DefaultSchemaGenerator.java Sat Jan 23 13:52:22 2010
@@ -931,6 +931,7 @@
if (isArryType && !isBase64Binary) {
elt1.setMaxOccurs(Long.MAX_VALUE);
}
+ elt1.setMinOccurs(0);
if (!isPrimitive) {
elt1.setNillable(true);
}
@@ -1233,6 +1234,7 @@
if (isArray) {
elt1.setMaxOccurs(Long.MAX_VALUE);
}
+ elt1.setMinOccurs(0);
if (!("int".equals(schemaTypeName.getLocalPart()) ||
"double".equals(schemaTypeName.getLocalPart()) ||
"long".equals(schemaTypeName.getLocalPart()) ||