[ https://issues.apache.org/jira/browse/CXF-9091?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17914015#comment-17914015 ]
Manuel Shenavai commented on CXF-9091: -------------------------------------- I found that in Camel 2, this problem will not occur if the WSDL contains the following policy (attaching the full wsdl to this ticket): <sp:TransportBinding xmlns:sp="http://docs.oasis-open.org/ws-sx/ws-securitypolicy/200702"> <wsp:Policy> <sp:TransportToken> <wsp:Policy> <sp:HttpsToken> <wsp:Policy> <wsp:ExactlyOne> <sp:HttpBasicAuthentication/> <sp:RequireClientCertificate/> </wsp:ExactlyOne> </wsp:Policy> </sp:HttpsToken> </wsp:Policy> </sp:TransportToken> <sp:AlgorithmSuite> <wsp:Policy> <wsp:ExactlyOne> <sp:Basic256/> <sp:Basic192/> <sp:Basic128/> <sp:TripleDes/> <sp:Basic256Rsa15/> <sp:Basic192Rsa15/> <sp:Basic128Rsa15/> <sp:TripleDesRsa15/> <sp:Basic256Sha256/> <sp:Basic192Sha256/> <sp:Basic128Sha256/> <sp:TripleDesSha256/> <sp:Basic256Sha256Rsa15/> <sp:Basic192Sha256Rsa15/> <sp:Basic128Sha256Rsa15/> <sp:TripleDesSha256Rsa15/> </wsp:ExactlyOne> </wsp:Policy> </sp:AlgorithmSuite> <sp:Layout> <wsp:Policy> <sp:Strict/> </wsp:Policy> </sp:Layout> </wsp:Policy> </sp:TransportBinding> > 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 > Assignee: Freeman Yue Fang > Priority: Major > > 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 > Mailinglist Post: > https://lists.apache.org/thread/vproojr7pcygpjtrygfxj8qcgj1x2q4x -- This message was sent by Atlassian Jira (v8.20.10#820010)