[ 
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:elem...@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.

Reply via email to