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 "Davide Cavarretta (JIRA)" <ji...@apache.org> on 2017/03/27 07:57:41 UTC

[jira] [Commented] (AXIS2-5070) Enumeration type fromValue() function update breaks stub compilation

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

Davide Cavarretta commented on AXIS2-5070:
------------------------------------------

Is this issue going to be released on 1.6 branch?

I found in on 1.7 branch https://github.com/apache/axis2-java/blob/1_7/modules/adb-codegen/src/org/apache/axis2/schema/template/ADBBeanTemplate-bean.xsl#L1819 but https://github.com/apache/axis2-java/blob/1_6/modules/adb-codegen/src/org/apache/axis2/schema/template/ADBBeanTemplate-bean.xsl#L2114


> Enumeration type fromValue() function update breaks stub compilation
> --------------------------------------------------------------------
>
>                 Key: AXIS2-5070
>                 URL: https://issues.apache.org/jira/browse/AXIS2-5070
>             Project: Axis2
>          Issue Type: Bug
>          Components: codegen
>    Affects Versions: 1.6.0
>            Reporter: Vilnis Termanis
>            Assignee: Sagara Gunathunga 
>
> The "fix" in AXIS2-3034 unfortunately breaks WSDL generation in that the fromValue() function is not compilable in certain situations. For example, with the following type: 
>  <xs:simpleType name="tSomeType"> 
>      <xs:restriction base="xs:int"> 
>        <xs:enumeration value="1"> 
>          <xs:annotation> 
>            <xs:documentation>Something</xs:documentation> 
>          </xs:annotation> 
>        </xs:enumeration> 
>        <xs:enumeration value="2"> 
>          <xs:annotation> 
>            <xs:documentation>Something else</xs:documentation> 
>          </xs:annotation> 
>        </xs:enumeration> 
>      </xs:restriction> 
>    </xs:simpleType> 
> Corresponding fromValue function now contains: 
>  public static TSomeType fromValue(int value) 
>                        throws java.lang.IllegalArgumentException { 
>                      TSomeType enumeration = (TSomeType) 
>                          
>                               _table_.get(value + ""); 
>                              
>                      if ((enumeration == null) && !((value == null) || (value.equals("")))) { 
>                          throw new java.lang.IllegalArgumentException(); 
>                      } 
>                      return enumeration; 
>                  } 
>  Since value is of type 'int', the updated if statement results in compilation failure ("int cannot be dereferenced"). 
>  Tested with Axis2 1.6.0 wsdl2java. 
>  Regards, 
>  VT



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

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