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

Unmarshalling error is thrown with CXF 2.7.9 (and later versions) when a JAXWS handler is configured.

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • 2.7.9
    • 2.7.12, 3.0.1
    • JAXB Databinding
    • None
    • JDK 1.7.0_55, CXF 2.7.9

    • Unknown

    Description

      We have an issue with unmarshalling of existing SOAP messages after upgrading to CXF 2.7.9.
      I created a service which reproduces the issue. The request for this service is generated by older axis clients as follows:

      <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ser="http://service.sample.com/">
         <soapenv:Header/>
         <soapenv:Body>
            <getDataFromWebService xmlns="http://service.sample.com/">
               <person xmlns="">
                  <age>1</age>
                  <description>?</description>
                  <name>1</name>
               </person>
            </getDataFromWebService>
         </soapenv:Body>
      </soapenv:Envelope>
      

      This request works fine with CXF 2.7.5 but after upgrading to CXF 2.7.9 it gets "Unmarshalling Error: cvc-complex-type.2.4.a: Invalid content was found starting with element 'person'. One of '

      {person}

      ' is expected.".

      If I remove the JAXWS handler then it works fine with CXF 2.7.9.

      After stepping through the code, it seems like the issue might be related to W3CDOMStreamReader which gets used when a JAXWS handler is configured versus a ValidatingStreamReader which gets created when an JAXWS handler is not configured.

      Attachments

        1. SampleWSCxf.zip
          12 kB
          Edwin

        Issue Links

          Activity

            People

              dkulp Daniel Kulp
              edga Edwin
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: