axis-java-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "ALB (JIRA)" <j...@apache.org>
Subject [jira] Commented: (AXIS2-4356) WSDL2Java doesn't support xsd:element@fixed
Date Thu, 11 Feb 2010 19:48:27 GMT

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

ALB commented on AXIS2-4356:
----------------------------

I'm looking to have elements with a fixed attribute set when the code is generated.  Is there
a workaround for this?

> WSDL2Java doesn't support xsd:element@fixed
> -------------------------------------------
>
>                 Key: AXIS2-4356
>                 URL: https://issues.apache.org/jira/browse/AXIS2-4356
>             Project: Axis2
>          Issue Type: Improvement
>          Components: adb, codegen, wsdl
>    Affects Versions: 1.4.1
>         Environment: Java 6
>            Reporter: Aaron Gourley
>            Priority: Minor
>
> For reference, the default and fixed constraints are defined here:
> http://www.w3.org/TR/xmlschema-1/#e-value_constraint
> Consider the following XML schema definitions:
> <xs:element name="ResultCode" type="tns:ResultCode" />
> <xs:complexType name="ResultCode">
>     <xs:sequence>
>         <xs:element name="code" default="0" type="xs:long" />
>     </xs:sequence>
> </xs:complexType>
> <xs:element name="SuccessCode" type="tns:SuccessCode" />
> <xs:complexType name="SuccessCode">
>     <xs:sequence>
>         <xs:element name="code" fixed="0" type="xs:long" />
>     </xs:sequence>
> </xs:complexType>
> ADB code generated for the ResultCode element is correct in setting the default value
of the code field to 0:
>     protected long localCode = org.apache.axis2.databinding.utils.ConverterUtil.convertToLong("0");
> ADB code generated for the SuccessCode element is incorrect according to XSD definition
for the fixed element.  It actually appears to completely ignore the fixed attribute.  Considering
the XSD definition for the fixed attribute, I think the generated code should declare the
code field as final and set the final value as follows:
>     protected final long localCode = org.apache.axis2.databinding.utils.ConverterUtil.convertToLong("0");
> It follows that the generated code should not contain a setter method for the code field.

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


Mime
View raw message