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

Doc-lit, bare, multi part ("type" and not any) message gets rejected by DocLiteralInInterceptor

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Not A Problem
    • None
    • 2.2.10, 2.3
    • Core
    • None

    Description

      I have a message defined as below in a WSDL. (Granted, it is not a WS-1 Profile compliant WSDL).

      <wsdl:message name="MPTestResponse">
      
        <wsdl:part name="Param1" type="xsd:int"/>
      
        <wsdl:part name="DefaultOutput" type="xsd:string"/>
      
      
      </wsdl:message>
      

      If the service model is built from a WSDL and not from a service class, the MessagePartInfo's concrete name will not have a namespace. As the result, the SOAP message gets rejected incorrectly by DocLiteralInInterceptor due to findMessagePart() method returns null. In the findMessagePart() method, it adds a namespace to the read in message part (variable "name") if it does not have one. In the case of the"type" message part, it does not have a namespace. The problem is that the MessagePartInfo's concreteName does not have a namespace and the comparison (name.equals(p.getConcreteName()) will fail. (The "name" now has a namespace but the concrete name does not.)

      Attachments

        1. CXF-2902.patch
          8 kB
          William Tam

        Activity

          People

            Unassigned Unassigned
            wtam William Tam
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: