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 "Daniel Davies (JIRA)" <ax...@ws.apache.org> on 2006/12/08 23:57:20 UTC

[jira] Created: (AXIS-2596) Complex type extends Simple type generated class does not compile

Complex type extends Simple type generated class does not compile
-----------------------------------------------------------------

                 Key: AXIS-2596
                 URL: http://issues.apache.org/jira/browse/AXIS-2596
             Project: Apache Axis
          Issue Type: Bug
          Components: WSDL processing
    Affects Versions: 1.4
         Environment: Windows
            Reporter: Daniel Davies


This schema excerpt is from an OTA schema:

<xs:complexType name="CountryNameType">
	<xs:annotation>
		<xs:documentation xml:lang="en">
			The name or code of a country (e.g. as used in an address or to specify citizenship of a traveller).			</xs:documentation>
	</xs:annotation>
	<xs:simpleContent>
		<xs:extension base="StringLength0to64">
			<xs:attribute name="Code" type="ISO3166" use="optional">
				<xs:annotation>
					<xs:documentation xml:lang="en">ISO 3166 code for a country.</xs:documentation>
				</xs:annotation>
			</xs:attribute>
		</xs:extension>
	</xs:simpleContent>
</xs:complexType>

<xs:simpleType name="StringLength0to64">
	<xs:annotation>
		<xs:documentation xml:lang="en">Used for Character Strings, length 0 to 64</xs:documentation>
	</xs:annotation>
	<xs:restriction base="xs:string">
		<xs:minLength value="0"/>
		<xs:maxLength value="64"/>
	</xs:restriction>
</xs:simpleType>

wsdl2java generates this:

public class CountryNameType  implements java.io.Serializable, org.apache.axis.encoding.SimpleType {
    private java.lang.String code;  // attribute

    public CountryNameType() {
    }

    // Simple Types must have a String constructor
    public CountryNameType(java.lang.String _value) {
        super(_value);
    }
//Rest of class
}

I am not sure if a StringLength0to64 class that should have been created and CountryNameType should have extended it or the call to super with a parameter should not be there.  Either way, it is not generating code that will compile.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

---------------------------------------------------------------------
To unsubscribe, e-mail: axis-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-dev-help@ws.apache.org


[jira] Commented: (AXIS-2596) Complex type extends Simple type generated class does not compile

Posted by "Daniel Davies (JIRA)" <ax...@ws.apache.org>.
    [ http://issues.apache.org/jira/browse/AXIS-2596?page=comments#action_12457004 ] 
            
Daniel Davies commented on AXIS-2596:
-------------------------------------

Although I did search before creating this bug, I believe this is the same bug as AXIS-2191

> Complex type extends Simple type generated class does not compile
> -----------------------------------------------------------------
>
>                 Key: AXIS-2596
>                 URL: http://issues.apache.org/jira/browse/AXIS-2596
>             Project: Apache Axis
>          Issue Type: Bug
>          Components: WSDL processing
>    Affects Versions: 1.4
>         Environment: Windows
>            Reporter: Daniel Davies
>
> This schema excerpt is from an OTA schema:
> <xs:complexType name="CountryNameType">
> 	<xs:annotation>
> 		<xs:documentation xml:lang="en">
> 			The name or code of a country (e.g. as used in an address or to specify citizenship of a traveller).			</xs:documentation>
> 	</xs:annotation>
> 	<xs:simpleContent>
> 		<xs:extension base="StringLength0to64">
> 			<xs:attribute name="Code" type="ISO3166" use="optional">
> 				<xs:annotation>
> 					<xs:documentation xml:lang="en">ISO 3166 code for a country.</xs:documentation>
> 				</xs:annotation>
> 			</xs:attribute>
> 		</xs:extension>
> 	</xs:simpleContent>
> </xs:complexType>
> <xs:simpleType name="StringLength0to64">
> 	<xs:annotation>
> 		<xs:documentation xml:lang="en">Used for Character Strings, length 0 to 64</xs:documentation>
> 	</xs:annotation>
> 	<xs:restriction base="xs:string">
> 		<xs:minLength value="0"/>
> 		<xs:maxLength value="64"/>
> 	</xs:restriction>
> </xs:simpleType>
> wsdl2java generates this:
> public class CountryNameType  implements java.io.Serializable, org.apache.axis.encoding.SimpleType {
>     private java.lang.String code;  // attribute
>     public CountryNameType() {
>     }
>     // Simple Types must have a String constructor
>     public CountryNameType(java.lang.String _value) {
>         super(_value);
>     }
> //Rest of class
> }
> I am not sure if a StringLength0to64 class that should have been created and CountryNameType should have extended it or the call to super with a parameter should not be there.  Either way, it is not generating code that will compile.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

---------------------------------------------------------------------
To unsubscribe, e-mail: axis-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-dev-help@ws.apache.org