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 "Balaji Hari (JIRA)" <ji...@apache.org> on 2008/10/23 07:42:44 UTC

[jira] Commented: (AXIS2-4093) Elements of subtypes returned in wrong order in webservice response

    [ https://issues.apache.org/jira/browse/AXIS2-4093?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12642060#action_12642060 ] 

Balaji Hari commented on AXIS2-4093:
------------------------------------

What time frame are we looking for the 1.5 release?

> Elements of subtypes returned in wrong order in webservice response
> -------------------------------------------------------------------
>
>                 Key: AXIS2-4093
>                 URL: https://issues.apache.org/jira/browse/AXIS2-4093
>             Project: Axis 2.0 (Axis2)
>          Issue Type: Bug
>          Components: adb
>    Affects Versions: 1.3
>            Reporter: Balaji Hari
>            Priority: Critical
>             Fix For: 1.5
>
>
> When axis service returns elements of subtypes it returns in reverse order, 
> 1. subclass 
> 2.  super class.
> Snippet from WSDL definition:
> - <xs:complexType name="RuleDTO">
> - <xs:sequence>
>  <xs:element minOccurs="0" name="annotation" nillable="true" type="xs:string" />
>  <xs:element maxOccurs="unbounded" minOccurs="0" name="applicableTrails" nillable="true" type="xs:int" />
>  <xs:element minOccurs="0" name="deviceTypeId" nillable="true" type="xs:int" />
> ...
>  <xs:element minOccurs="0" name="subject" nillable="true" type="ax21:SubjectDTO" />
> </xs:sequence>
>  </xs:complexType>
> Definition of SubjectDTO (which has following sub types).
> <xs:complexType name="SubjectDTO">
> - <xs:sequence>
>  <xs:element minOccurs="0" name="caseSensitive" type="xs:boolean" />
>  <xs:element minOccurs="0" name="frequency" nillable="true" type="xs:int" />
>  <xs:element minOccurs="0" name="ignoreWhitespace" type="xs:boolean" />
>  <xs:element minOccurs="0" name="key" nillable="true" type="ax21:KeyDTO" />
>  <xs:element minOccurs="0" name="COMPONENT_CLASSNAME" nillable="true" type="xs:string" />
>  </xs:sequence>
>  </xs:complexType>
> - <xs:complexType name="SubjectCollectionDTO">
> - <xs:complexContent>
> - <xs:extension base="ax21:SubjectDTO">
> - <xs:sequence>
>  <xs:element maxOccurs="unbounded" minOccurs="0" name="collection" nillable="true" type="xs:string" />
>  <xs:element minOccurs="0" name="contiguous" type="xs:boolean" />
>  <xs:element minOccurs="0" name="ordered" type="xs:boolean" />
>  </xs:sequence>
>  </xs:extension>
>  </xs:complexContent>
>  </xs:complexType>
> - <xs:complexType name="SubjectLinesDTO">
> - <xs:complexContent>
> - <xs:extension base="ax21:SubjectCollectionDTO">
>  <xs:sequence />
>  </xs:extension>
>  </xs:complexContent>
>  </xs:complexType>
> Server Response :
> <return type="com.bmc.bcan.dto.RuleDTO">
>                <ns1:annotation></ns1:annotation>
>                <ns1:applicableTrails
>                        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:nil="true" />
>                <ns1:deviceTypeId>0</ns1:deviceTypeId>
>               <!-- SubType Element -->
>                   <ns1:subject type="com.bmc.bcan.dto.SubjectLinesDTO">
>                    <ns1:collection>set mls flow full</ns1:collection>
>                    <ns1:collection>
>                        set mls nde ${global.netflowDestination}
>                        ${global.netflowPort}
>                    </ns1:collection>
>                    <ns1:collection>
>                        set mls nde version 5
>                    </ns1:collection>
>                    <ns1:collection>set mls nde enable</ns1:collection>
>                    <ns1:collection>
>                        set mls agingtime long 64
>                    </ns1:collection>
>                    <ns1:collection>
>                        set mls agingtime fast 16 0
>                    </ns1:collection>
>                    <ns1:contiguous>false</ns1:contiguous>
>                    <ns1:ordered>false</ns1:ordered>
>                    <ns1:caseSensitive>false</ns1:caseSensitive>
>                    <ns1:frequency>2</ns1:frequency>
>                    <ns1:ignoreWhitespace>true</ns1:ignoreWhitespace>
>                    <ns1:key type="com.bmc.bcan.dto.KeyDTO">
>                        <ns1:keyString>458169663-121</ns1:keyString>
>                    </ns1:key>
>                </ns1:subject>
>                <ns1:substitutionValidation>
>                    true
>                </ns1:substitutionValidation>
>                <ns1:trigger
>                    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
>                    xsi:nil="true" />
>                <ns1:violationSeverity>5</ns1:violationSeverity>
>            </return>
> For SubjectLinesDTO the subelement collection from SubjectCollectionDTO is returned first instead of
> elements from SubjectDTO (<ns1:caseSensitive>false</ns1:caseSensitive>
>                    <ns1:frequency>2</ns1:frequency>
>                    <ns1:ignoreWhitespace>true</ns1:ignoreWhitespace>
>                    <ns1:key type="com.bmc.bcan.dto.KeyDTO">
>                        <ns1:keyString>458169663-121</ns1:keyString>
>                    </ns1:key>)
> SubjectLinesDTO.Factory.parse in the client generated stub tries to parse the elements in SubjectDTO first and then SubjectLinesDTO
> This issue is second part of 
> https://issues.apache.org/jira/browse/AXIS2-4092
> which happens when type="fully qualified class name" is changed to xsi:type="ns:SchemaType" (test run)
> We need a fix for this as this has been a blocker.
> Balaji

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


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