1 Reply Latest reply on Mar 11, 2013 5:30 PM by jonathan wilson

    get Jboss 7 to use custom top down WSDL definition of your choosing, without having CXF generate a wsdl

    jonathan wilson Newbie

      we are moving a topdown (wsdl first) ws from jboss4 to jboss7 and are having some difficulties with CFX I am noticing that the large wsdl file located in standalone\data\wsdl\x.ear\x.war\x.wsdl is not generated off the supplied xsd set, it seems to be generating off the classes. For instance our definition from JBoss4 reads (obfuscated)

          <element name="x">

          <complexType>

          <sequence>

          <element minOccurs="0" name="x" type="x"/>

          <choice>

          <element name="x" type="x"/>

          <element name="x" type="x"/>

          <element name="x" type="x"/>

          <element name="x" type="x"/>

          <element name="x" type="x"/>

          </choice>

          </sequence>

          </complexType>

          </element>

       

      and the one generated by CXF has all the choice element replaced with minoccurs = 0, totally invalid for our actual use.

          <xs:element name="getUserRequest">

          <xs:complexType>

          <xs:sequence>

          <xs:element minOccurs="0" name="x" type="xs:string"/>

          <xs:element minOccurs="0" name="x" type="ns1:x"/>

          <xs:element minOccurs="0" name="x" type="ns1:x"/>

          <xs:element minOccurs="0" name="x" type="ns1:x"/>

          <xs:element minOccurs="0" name="x" type="ns1:x"/>

          <xs:element minOccurs="0" name="x" type="ns1:x"/>

          </xs:sequence>

          </xs:complexType>

          </xs:element>


      for the record, this wsdl works just fine, the reason we need to use our exact wsdl is that we have huge customers hitting this wsdl using c# proxy generated with wsdl.exe, wsdl.exe generates a totally different proxy class when presented with the CXF wsdl, and we cant get them to switch.

      we use wsconsume to build our java classes and it annotates them well enough to be parsed by cxf, but not well enough to actually present the initial intent of the complexTypes, so after much looking, how do you get Jboss 7 to use the WSDL definition of your choosing, without having CXF generate a wsdl? We will not be using Spring to make this happen, so...