Details
-
Type:
Bug
-
Status: Closed
-
Priority:
Major
-
Resolution: Fixed
-
Affects Version/s: 2.7.9
-
Component/s: JAXB Databinding
-
Labels:None
-
Environment:
JDK 1.7.0_55, CXF 2.7.9
-
Estimated Complexity: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
Issue Links
- is related to
-
CXF-5811 Client fails with UnmarshalException if WSS4JInInterceptor is used
-
- Closed
-