Uploaded image for project: 'CXF'
  1. CXF
  2. CXF-3289

idl2wsdl fails if reference to interface is used inside the interface itself.

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • 2.3.2
    • 2.3.3, 2.4
    • Tooling
    • None
    • CXF-2.3.x branch

    Description

      idl2wsdl fails on the following IDL interface:

      test.idl
      module Test {
      
        interface ForTesting {
      
          readonly attribute ForTesting session;
      
          void greetMe(in ForTesting pointer, in string who);
          
        };
      };
      

      with the error

      idl2wsdl -verbose -I .. -I . -o ../../../wsdl/ ../../../test.idl
      idl2wsdl - Apache CXF 2.3.x-fuse-SNAPSHOT
      
       ( module Test ( interface ForTesting { ( attribute readonly ForTesting session ) ( greetMe void ( in string who ) ) } ) )
      Error : org.apache.cxf.tools.common.ToolException: java.lang.RuntimeException: [ParamTypeSpecVisitor] Invalid IDL: unknown element ForTesting
      
      org.apache.cxf.tools.common.ToolException: org.apache.cxf.tools.common.ToolException: java.lang.RuntimeException: [ParamTypeSpecVisitor] Invalid IDL: unknown element ForTesting
              at org.apache.cxf.tools.corba.processors.idl.IDLToWSDLProcessor.process(IDLToWSDLProcessor.java:88)
              at org.apache.cxf.tools.corba.processors.idl.IDLToWSDLProcessor.process(IDLToWSDLProcessor.java:79)
              at org.apache.cxf.tools.corba.IDLToWSDL.execute(IDLToWSDL.java:75)
              at org.apache.cxf.tools.common.toolspec.ToolRunner.runTool(ToolRunner.java:103)
              at org.apache.cxf.tools.common.toolspec.ToolRunner.runTool(ToolRunner.java:58)
              at org.apache.cxf.tools.common.toolspec.ToolRunner.runTool(ToolRunner.java:40)
              at org.apache.cxf.tools.corba.IDLToWSDL.run(IDLToWSDL.java:164)
              at org.apache.cxf.tools.corba.IDLToWSDL.main(IDLToWSDL.java:172)
      Caused by: org.apache.cxf.tools.common.ToolException: java.lang.RuntimeException: [ParamTypeSpecVisitor] Invalid IDL: unknown element ForTesting
              at org.apache.cxf.tools.corba.processors.idl.IDLToWSDLProcessor.parseIDL(IDLToWSDLProcessor.java:220)
              at org.apache.cxf.tools.corba.processors.idl.IDLToWSDLProcessor.process(IDLToWSDLProcessor.java:86)
              ... 7 more
      Caused by: java.lang.RuntimeException: java.lang.RuntimeException: [ParamTypeSpecVisitor] Invalid IDL: unknown element ForTesting
              at org.apache.cxf.tools.corba.processors.idl.PortTypeVisitor.visitInterface(PortTypeVisitor.java:201)
              at org.apache.cxf.tools.corba.processors.idl.PortTypeVisitor.visit(PortTypeVisitor.java:93)
              at org.apache.cxf.tools.corba.processors.idl.DefinitionVisitor.visit(DefinitionVisitor.java:66)
              at org.apache.cxf.tools.corba.processors.idl.ModuleVisitor.visit(ModuleVisitor.java:53)
              at org.apache.cxf.tools.corba.processors.idl.DefinitionVisitor.visit(DefinitionVisitor.java:57)
              at org.apache.cxf.tools.corba.processors.idl.WSDLASTVisitor.visit(WSDLASTVisitor.java:127)
              at org.apache.cxf.tools.corba.processors.idl.IDLToWSDLProcessor.parseIDL(IDLToWSDLProcessor.java:212)
              ... 8 more
      Caused by: java.lang.RuntimeException: [ParamTypeSpecVisitor] Invalid IDL: unknown element ForTesting
              at org.apache.cxf.tools.corba.processors.idl.ParamTypeSpecVisitor.visit(ParamTypeSpecVisitor.java:58)
              at org.apache.cxf.tools.corba.processors.idl.AttributeVisitor.generateWrappedDocElement(AttributeVisitor.java:218)
              at org.apache.cxf.tools.corba.processors.idl.AttributeVisitor.generateGetter(AttributeVisitor.java:123)
              at org.apache.cxf.tools.corba.processors.idl.AttributeVisitor.visit(AttributeVisitor.java:106)
              at org.apache.cxf.tools.corba.processors.idl.PortTypeVisitor.visitInterface(PortTypeVisitor.java:164)
              ... 14 more
      Error : org.apache.cxf.tools.common.ToolException: java.lang.RuntimeException: [ParamTypeSpecVisitor] Invalid IDL: unknown element ForTesting
      

      Note that the interface name ForTesting is used as an attribute and operation parameter inside the interface itself.

      Attachments

        1. test.idl
          0.2 kB
          Torsten Mielke

        Activity

          People

            ffang Freeman Yue Fang
            tmielke Torsten Mielke
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: