IDLToWSDL does not generate correct WSDL for certain combinations of forward declaration ----------------------------------------------------------------------------------------
common.concepts.key: YOKO-392 common.concepts.url: https://issues.apache.org/jira/browse/YOKO-392 common.concepts.project: Yoko - CORBA Server common.concepts.issuetype: Bug common.concepts.components: Idl2Wsdl Affects Versions: v1.0-incubating-M2 issue.field.reporter: Darren Middleman issue.field.assignee: Darren Middleman common.concepts.fixfor: 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.