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
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:
WSDL defines a Type named "System", which the generator creates a class for
in the Stub. The unqualified reference 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: [email protected]
For additional commands, e-mail: [email protected]