Manuel Shenavai created CXF-9091:
------------------------------------
Summary: Camel 3|CXF: ParsingErrors with OneWay Messages
Key: CXF-9091
URL: https://issues.apache.org/jira/browse/CXF-9091
Project: CXF
Issue Type: Bug
Reporter: Manuel Shenavai
Hi everyone,
we recently moved from Camel 2 to Camel 3 and we are now observing the
following problem with CXF. If a OneWay message exceeds a certain length, the
messages fail with a parser error like:
Caused by: java.lang.IllegalStateException: Current event not START_ELEMENT or
END_ELEMENT
at
com.ctc.wstx.sr.BasicStreamReader.getNamespaceCount(BasicStreamReader.java:805)
~[woodstox-core-6.2.7.jar:6.2.7]
at
org.apache.cxf.staxutils.DepthXMLStreamReader.getNamespaceCount(DepthXMLStreamReader.java:122)
~[cxf-core-3.5.2.jar:3.5.2]
at
org.apache.cxf.staxutils.DepthXMLStreamReader.getNamespaceCount(DepthXMLStreamReader.java:122)
~[cxf-core-3.5.2.jar:3.5.2]
at
org.apache.camel.component.cxf.converter.DelegatingXMLStreamReader.<init>(DelegatingXMLStreamReader.java:40)
~[camel-cxf-3.17.0.jar:3.17.0]
at
org.apache.camel.component.cxf.converter.CxfPayloadConverter.convertTo(CxfPayloadConverter.java:225)
~[camel-cxf-3.17.0.jar:3.17.0]
at
org.apache.camel.component.cxf.converter.CxfPayloadConverterLoader.lambda$registerFallbackConverters$8(CxfPayloadConverterLoader.java:68)
~[camel-cxf-3.17.0.jar:3.17.0]
at
org.apache.camel.support.SimpleTypeConverter.convertTo(SimpleTypeConverter.java:101)
~[camel-support-3.17.0.jar:3.17.0]
... 30 common frames omitted
The error will not happen if we reduce the length of the message or if we
change it from OneWay to ResponseReply. This indicates a problem in the async
decoupling of the request.
During debugging I found that the HTTP thread is used to handle the request.
But the actual processing of the message happens in new thread. Maybe the input
stream is closed after the http thread is finished (HTTP 202) and the spawned
thread cannot read the full content anymore.
I created the following reproducer based on Spring Boot:
[https://github.com/mash-sap/cxfOneWayError/tree/main]
CXF: 3.6.5
Camel CXF: 3.17.0
Tomcat: 9.0.83
--
This message was sent by Atlassian Jira
(v8.20.10#820010)