[ https://issues.apache.org/jira/browse/YOKO-392?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Darren Middleman closed YOKO-392. --------------------------------- Resolution: Fixed > IDLToWSDL does not generate correct WSDL for certain combinations of forward > declaration > ---------------------------------------------------------------------------------------- > > Key: YOKO-392 > URL: https://issues.apache.org/jira/browse/YOKO-392 > Project: Yoko - CORBA Server > Issue Type: Bug > Components: Idl2Wsdl > Affects Versions: v1.0-incubating-M2 > Reporter: Darren Middleman > Assignee: Darren Middleman > Fix For: v1.0.0 > > > IDL which declares a forward declaration for an interface or struct, then > provides the full declaration for the forward declared interface/struct, > followed by the use of the interface/struct as an attribute, member, > parameter type will result in incorrect WSDL being generated by the IDLToWSDL > tool. > For example, given the following IDL: > interface InterfaceA; > interface InterfaceA { > void noOp(); > } > interface InterfaceB { > void testOp(in long id, in InterfaceA intf); > }; > the schema type produced in the WSDL for testOp will be: > <xs:element name="testOp"> > <xs:complexType> > <xs:sequence> > <xs:element name="id" type="xs:int"> > </xs:element> > <xs:element name="intf"> > </xs:element> > </xs:sequence> > </xs:complexType> > </xs:element> > Note that the second element named "intf" does not have a type associated > with it. > While the use of the forward declaration in the above example is not needed, > the IDLToWSDL tool should still produce correct WSDL. In the cases where the > forward declared type is used before its full declaration is made, the WSDL > produced is correct: > interface InterfaceA; > interface InterfaceB { > void testOp(in long id, in InterfaceA intf); > }; > interface InterfaceA { > void noOp(); > } -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.