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 "Dean Holdren (JIRA)" <ji...@apache.org> on 2010/10/13 20:15:33 UTC

[jira] Reopened: (AXIS2-4688) getUniqueSuffix uses unqualified (java built-in) System class, conflicts with generated System type defined in WSDL

     [ https://issues.apache.org/jira/browse/AXIS2-4688?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Dean Holdren reopened AXIS2-4688:
---------------------------------


This change should be applied to the 1_5 branch as well.

> getUniqueSuffix uses unqualified (java built-in) System class, conflicts with generated System type defined in WSDL
> -------------------------------------------------------------------------------------------------------------------
>
>                 Key: AXIS2-4688
>                 URL: https://issues.apache.org/jira/browse/AXIS2-4688
>             Project: Axis2
>          Issue Type: Bug
>          Components: codegen
>    Affects Versions: 1.5.1
>         Environment: jdk 1.6
>            Reporter: Dean Holdren
>            Assignee: Andreas Veithen
>             Fix For: 1.6
>
>
> Steps to Reproduce:
>     Run wsdl2java on a WSDL with the following XSD element, then compile:
> <xsd:simpleType name="system"><xsd:restriction base="xsd:string"><xsd:enumeration value="A"/><xsd:enumeration value="B"/><xsd:enumeration value="C"/><xsd:enumeration value="D"/><xsd:enumeration value="E"/></xsd:restriction></xsd:simpleType>
> Error Result:
>     Compilation warning of "no symbol found" for currentTimeMillis()
> Suspected Reason:
>     The .wsdl file defines a Type named "System", which the generator creates a class for in the Stub.  The unqualified reference (in getUniqueSuffix) to java's built System class conflicts.
> Proposed Fix:
>   Change the reference to "System" in the method getUniqueSuffix in generated Stub to fully qualified "java.lang.System"
> private static synchronized java.lang.String getUniqueSuffix(){
>     // reset the counter if it is greater than 99999
>     if (counter > 99999){
>         counter = 0;
>     }
>     counter = counter + 1; 
>     return java.lang.Long.toString(System.currentTimeMillis()) + "_" + counter;
> }

-- 
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: java-dev-unsubscribe@axis.apache.org
For additional commands, e-mail: java-dev-help@axis.apache.org