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

Ruslan Stelmachenko commented on CXF-7426:
------------------------------------------

_The original issue is not mine but was closed so I created a new issue because 
the bug still exists._

Same problem here.
Apache CXF 3.1.11 generates Java classes that have nested static classes with 
same simple name.

For example:

{code:java}
public class UserIdentificators {
    public static class Extension {
        public static class Extension {
        }
    }
}
{code}

This code doesn't compile because according to [JSL 
Specification|http://docs.oracle.com/javase/specs/jls/se7/html/jls-8.html#jls-8.1]
bq. It is a compile-time error if a class has the same simple name as any of 
its enclosing classes or interfaces.

I can't attach the full source WSDL. It has many imports from closed resources.
I think, the relevant part is:

{code:xml}
  <xsd:complexType name="UserIdentificators">
    <xsd:sequence>
      <xsd:element ref="ns1:userId" minOccurs="0" maxOccurs="1"/>
      <xsd:element name="extension" minOccurs="0" maxOccurs="1">
        <xsd:complexType>
          <xsd:sequence>
            <xsd:element ref="tns:anotherUserId" minOccurs="0" maxOccurs="1"/>
            <xsd:element name="extension" minOccurs="0" maxOccurs="1">
              <xsd:complexType>
                <xsd:sequence>
                  <xsd:any processContents="lax" namespace="##any" 
minOccurs="0" maxOccurs="unbounded"/>
                </xsd:sequence>
              </xsd:complexType>
            </xsd:element>
          </xsd:sequence>
        </xsd:complexType>
      </xsd:element>
    </xsd:sequence>
  </xsd:complexType>
{code}

> CLONE - wsdl2java command generated nested inner classes with same name
> -----------------------------------------------------------------------
>
>                 Key: CXF-7426
>                 URL: https://issues.apache.org/jira/browse/CXF-7426
>             Project: CXF
>          Issue Type: Bug
>          Components: JAX-WS Runtime
>    Affects Versions: 2.7.2
>         Environment: Windows and Unix
>            Reporter: Ruslan Stelmachenko
>             Fix For: Invalid
>
>
> We are using wsdl2java command for generating java classes from a wsdl url. 
> The details are:
> Apache CXF version: 2.7.2
> Java version: 1.7.0_10
> The CA certificate for specified hostname in the wsdl url is added to 
> jre/lib/security/cacerts trusted store, and the wsdl2java using the same java 
> command. The command we are executing given below:
> >./wsdl2java -d /home/ibs01/generated/ <wsdlurl> 
> The wsdlurl looks like : https://hostaname/aa/XXX_BookingManager?WSDL
> Note: For security issues we cannot publish the full url
> The command executed successfully and generated java classes output to 
> specified directory. But some of the classes doesn’t compile due to following 
> issues;
> 1.    Some classes contain nested inner classes (static) with same name
> Eg: 
> Class Response {
>       public static class AbcType{
>                                @XmlElement(name = "AbcType", nillable = true)
>                protected AbcType abcType;;
>               public static class AbcType { //Duplicated inner class
> }
> }
> }
> 2.    Some classes refer static variable from non-static manner
> Can you please guide us to resolve this issue. We are sure the web services 
> implementation must be perfect (it is a production environment and using by 
> many consumers). We suspect we missed something here, if anyone came across 
> with this type of issue please help us. If we missed any option in wsdl2java 
> command or missed any configuration please guide. We get to know that the web 
> services implemented in .Net framework.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to