Uploaded image for project: 'Axis2'
  1. Axis2
  2. AXIS2-4533

CodeGen Exception reusing messages for multiple faults.

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Minor
    • Resolution: Fixed
    • 1.5
    • 1.6.1, 1.7.0
    • codegen
    • None
    • Windows Vista Business 64bit
      Java 1.5

    Description

      I have a WSDL file with multiple ports and operations. I declared two WSDL messages as fault messages and ran WSDL2Code:

      #########################
      -uri ${project_loc:IdaresEvalProcess}/IdaresWS.wsdl
      -p de.ahija.thesis.idares.skeleton
      -Emp de.ahija.thesis.idares.skeleton
      -d adb
      -ss
      -sd
      -ssi
      -g
      -S gen/skeleton
      -R gen/res
      -or
      --noBuildXML
      #########################

      Unexpectedly I got an Exception:
      #########################
      Retrieving document at 'C:\Users\Ahija\Documents\Studium\S10\Diplomarbeit\Java\code\Idares\IdaresEvalProcess/IdaresWS.wsdl'.
      Retrieving schema wsdl:imported from 'idares-model.xsd', relative to 'file:/C:/Users/Ahija/Documents/Studium/S10/Diplomarbeit/Java/code/Idares/IdaresEvalProcess/IdaresWS.wsdl'.
      Retrieving document at 'C:\Users\Ahija\Documents\Studium\S10\Diplomarbeit\Java\code\Idares\IdaresEvalProcess/IdaresWS.wsdl'.
      Retrieving schema wsdl:imported from 'idares-model.xsd', relative to 'file:/C:/Users/Ahija/Documents/Studium/S10/Diplomarbeit/Java/code/Idares/IdaresEvalProcess/IdaresWS.wsdl'.
      Exception in thread "main" org.apache.axis2.wsdl.codegen.CodeGenerationException: org.apache.axis2.wsdl.codegen.CodeGenerationException: java.lang.RuntimeException: Element QName is null for sqlErrorMessage!
      at org.apache.axis2.wsdl.codegen.CodeGenerationEngine.generate(CodeGenerationEngine.java:271)
      at org.apache.axis2.wsdl.WSDL2Code.main(WSDL2Code.java:35)
      Caused by: org.apache.axis2.wsdl.codegen.CodeGenerationException: java.lang.RuntimeException: Element QName is null for sqlErrorMessage!
      at org.apache.axis2.wsdl.codegen.emitter.AxisServiceBasedMultiLanguageEmitter.emitSkeleton(AxisServiceBasedMultiLanguageEmitter.java:1432)
      at org.apache.axis2.wsdl.codegen.CodeGenerationEngine.generate(CodeGenerationEngine.java:253)
      ... 1 more
      Caused by: java.lang.RuntimeException: Element QName is null for sqlErrorMessage!
      at org.apache.axis2.wsdl.codegen.emitter.AxisServiceBasedMultiLanguageEmitter.getFaultParamElements(AxisServiceBasedMultiLanguageEmitter.java:2908)
      at org.apache.axis2.wsdl.codegen.emitter.AxisServiceBasedMultiLanguageEmitter.getFaultElement(AxisServiceBasedMultiLanguageEmitter.java:2827)
      at org.apache.axis2.wsdl.codegen.emitter.AxisServiceBasedMultiLanguageEmitter.generateMethodElement(AxisServiceBasedMultiLanguageEmitter.java:2348)
      at org.apache.axis2.wsdl.codegen.emitter.AxisServiceBasedMultiLanguageEmitter.loadOperations(AxisServiceBasedMultiLanguageEmitter.java:2224)
      at org.apache.axis2.wsdl.codegen.emitter.AxisServiceBasedMultiLanguageEmitter.createDOMDocumentForSkeletonInterface(AxisServiceBasedMultiLanguageEmitter.java:2181)
      at org.apache.axis2.wsdl.codegen.emitter.AxisServiceBasedMultiLanguageEmitter.writeSkeletonInterface(AxisServiceBasedMultiLanguageEmitter.java:2083)
      at org.apache.axis2.wsdl.codegen.emitter.AxisServiceBasedMultiLanguageEmitter.emitSkeleton(AxisServiceBasedMultiLanguageEmitter.java:1378)
      ... 2 more
      #########################

      Interestingly the bug does not appear, if I use a different message for each fault.

      Attachments

        1. IdaresWS.wsdl
          7 kB
          Christoph Kreidler
        2. idares-model.xsd
          6 kB
          Christoph Kreidler

        Activity

          People

            veithen Andreas Veithen
            ahija Christoph Kreidler
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: