Hi all,

 

I have a .NET interop issue with cxf 3.0 (also seen on 2.2.3).

I have looked for previous messages or JIRAs on this issue - I've seen
one or two similar topics but nothing that matches exactly.

 

I have a Java CXF client interacting with a .NET service.

The .net service wsdl defines an element called
"PredefinedAdminContacts" that is of type ArrayOfContactDTO 

 

<xs:element minOccurs="0" name="PredefinedAdminContacts" nillable="true"
type="tns:ArrayOfContactDTO"/>

 

The array type is later defined: 

 

<xs:complexType name="ArrayOfContactDTO">

                <xs:sequence>

                                <xs:element minOccurs="0"
maxOccurs="unbounded" name="ContactDTO" nillable="true"
type="tns:ContactDTO"/>

                </xs:sequence>

</xs:complexType>

<xs:element name="ArrayOfContactDTO" nillable="true"
type="tns:ArrayOfContactDTO"/>

 

 

Note ArrayOfXXX is not a recommended WSI 1.1 name, but it is still
legal. (fyi: this WSDL is pre-written and I would struggle to get it
altered).

 

CXF WSDLToJava works fine with this wsdl and seems to generate classes
with the correct field name i.e. PrefeinedAdminContacts 

 

However, the SOAP msg created has the type name instead of the actual
name.

E.g.

          <ns2:ArrayOfContactDTO>

                                  

                                  where I would expect 

 

                                  <ns2:PredefinedAdminContacts>

                                  

                                  

So the SOAP produced is wrong. I am assuming this is a CXF issue and not
JAXB or any other API.

 

Can anyone help with this issue? Very much appreciated!

 

Thomas McKiernan

Reply via email to