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 bu...@apache.org on 2002/10/28 15:15:59 UTC

DO NOT REPLY [Bug 14014] New: - wsdl2java tool schema compatibility failure

DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG 
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
<http://nagoya.apache.org/bugzilla/show_bug.cgi?id=14014>.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND 
INSERTED IN THE BUG DATABASE.

http://nagoya.apache.org/bugzilla/show_bug.cgi?id=14014

wsdl2java tool schema compatibility failure

           Summary: wsdl2java tool schema compatibility failure
           Product: Axis
           Version: 1.0
          Platform: All
        OS/Version: All
            Status: NEW
          Severity: Normal
          Priority: Other
         Component: WSDL processing
        AssignedTo: axis-dev@xml.apache.org
        ReportedBy: andras.avar@nokia.com


There is a problem on generating java interface classes from wsdl. The elements 
that are represented by extension base in schema are placed  after  the 
extension elements.

The schema specification says the representation of extension base and 
extension are oredered and the extension is placed at the end of the message.

***************************************
Let's have an example:

- Here is a schema with an extension:

<xs:complexType name="submitReqType">
	<xs:complexContent>
		<xs:extension base="tns:genericVASPRequestType">
			<xs:sequence>
				<xs:element name="Recipients" 
type="tns:recipientsType"/>
				<xs:element name="ServiceCode" 
type="tns:serviceCodeType" minOccurs="0"/>
				...
				<xs:element name="DistributionIndicator" 
type="xs:boolean" minOccurs="0"/>
				<xs:element name="Content" 
type="tns:contentReferenceType" minOccurs="0"/>
			</xs:sequence>
		</xs:extension>
	</xs:complexContent>
</xs:complexType>


<xs:complexType name="genericVASPRequestType">
	<xs:annotation>
		<xs:documentation>Base type for all requests from VASP to 
R/S</xs:documentation>
	</xs:annotation>
	<xs:sequence>
		<xs:element name="MM7Version" type="tns:versionType"/>
		<xs:element name="SenderIdentification" 
type="tns:senderIDType"/>
	</xs:sequence>
</xs:complexType>

- The bad xml representation produced by the generated interface look like this:

  <SubmitReq 
xmlns="http://www.3gpp.org/ftp/Specs/archive/23_series/23.140/schema/REL-5-MM7-
1-1">
	  <Recipients>
	  <To>
		  <RFC2822Address xsi:nil="true"/>
		  <Number displayOnly="false">+420</Number>
		  <ShortCode xsi:nil="true"/>
	  </To>
	  </Recipients>
	  ...
	  <Content href="cid:CFA2D105D249AE505148EEFEC5473D1F" 
allowAdaptations="true"/>
	  <MM7Version>5.3.0</MM7Version>
	  <SenderIdentification>	
		  <SenderAddress>+358990000003/PLMN</SenderAddress>
	  </SenderIdentification>
  </SubmitReq>
***************************************