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 "Alexey Zavizionov (JIRA)" <ax...@ws.apache.org> on 2008/01/24 17:54:34 UTC

[jira] Commented: (AXIS-865) attributes from super class are not serialized

    [ https://issues.apache.org/jira/browse/AXIS-865?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12562127#action_12562127 ] 

Alexey Zavizionov commented on AXIS-865:
----------------------------------------

Attribute from super class serialized in out of order.


> attributes from super class are not serialized
> ----------------------------------------------
>
>                 Key: AXIS-865
>                 URL: https://issues.apache.org/jira/browse/AXIS-865
>             Project: Axis
>          Issue Type: Bug
>          Components: Serialization/Deserialization
>    Affects Versions: 1.1rc2
>         Environment: Operating System: All
> Platform: All
>            Reporter: John Su
>            Assignee: Axis Developers Mailing List
>         Attachments: BeanSerializer.patch, MultipleAncestors.wsdl
>
>
> The stub classes generated by WSDL2Java do not publish the attributes inherited 
> from the super class(element).
> E.g.
> <complexType name="e1">
>   <sequence>
>     <element name="e2" type="string"/>
>   </sequence>
>   <attribute name="a1" type="string" use="required"/>
> </complexType>
> <complexType name="e3">
>   <complexContent>
>     <extension base="ns:e1">
>       <attribute name="a2" type="string" use="required"/>
>     </extension>
>   </complexContent>
> </complexType>
> When Axis serialize e3, the xml instance does not contain the attribute "a1" 
> but only "a2".
> I checked the stub class of e3 and e1. In e3's stub, there should have had some 
> code like below in order to publish the attributes from the super class.
> ...
>     // Type metadata
>     private static org.apache.axis.description.TypeDesc typeDesc =
>         new org.apache.axis.description.TypeDesc(e3.class);
>     static {
>         org.apache.axis.description.TypeDesc supTD = e1.getTypeDesc();
>         if (supTD != null) {
>             org.apache.axis.description.FieldDesc[] fds = supTD.getFields();
>             if (fds != null && fds.length > 0) {
>                 for(int i=0;i<fds.length;i++) {
>                     typeDesc.addFieldDesc(fds[i]);// add fields from super 
> class here.
>                 }
>             }
>         }
> ...

-- 
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