Uploaded image for project: 'Axis-C++'
  1. Axis-C++
  2. AXISCPP-91

An input message part and output message part cannot be the same element

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Minor
    • Resolution: Fixed
    • 1.1 Final
    • 1.3 Final
    • WSDL processing - RPC
    • None
    • Axis C 1.1.1
      Windows

    Description

      If the WSDL port operation uses messages that are the same element type, wsdl2ws chokes. Here's an example of such a case:

      <message name="EchoInput">
      <part element="tns:myBean" name="request"/>
      </message>

      <message name="EchoOutput">
      <part element="tns:myBean" name="result"/>
      </message>

      <portType name="EchoPortType">
      <operation name="echo">
      <input message="tns:EchoInput"/>
      <output message="tns:EchoOutput"/>
      </operation>
      </portType>

      Here's the output of running it through wsdl2ws:

      1

                                1. the type found ={http://www.acme.com
                                  }>myBean
                                  Exception in thread "main" org.apache.axis.wsdl.wsdl2ws.WrapperFault: unregister
                                  d type {http://www.acme.com}

                                  >myBean refered
                                  at org.apache.axis.wsdl.wsdl2ws.WSDL2Ws.getServiceInfo(Unknown Source)
                                  at org.apache.axis.wsdl.wsdl2ws.WSDL2Ws.genarateWrappers(Unknown Source)

      at org.apache.axis.wsdl.wsdl2ws.WSDL2Ws.main(Unknown Source)

      I traced the issue back to WSDL2Ws.getServiceInfo(). There's a call to remove the type that represents the wrapping element:

      this.typeMap.removeType(qname);

      The typeMap has the type >myBean prior to this call. When the loop iterates through again to process the return type, it can no longer find >myBean.

      Attachments

        1. Test.wsdl
          2 kB
          Don Samisa Abeysinghe

        Activity

          People

            Unassigned Unassigned
            scheng Steve Cheng`
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: