[
https://issues.apache.org/jira/browse/CXF-8961?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17922337#comment-17922337
]
Jakub Czajkowski commented on CXF-8961:
---------------------------------------
>From my observations, problem exists in version 4.0.5, and downgrade to 4.0.4
>helps. Seems to be connected with high/long traffic, where underlying http
>conections pool is fully used.
Can this problem be adressed?
> java.io.EOFException when consuming SOAP webservice using cxf 3.6.2
> -------------------------------------------------------------------
>
> Key: CXF-8961
> URL: https://issues.apache.org/jira/browse/CXF-8961
> Project: CXF
> Issue Type: Bug
> Affects Versions: 3.6.2, 4.0.3
> Reporter: Gijs Muys
> Priority: Major
>
> I am using cxf 3.6.2 to generate java classes based on a wsdl and I'm then
> invoking the SOAP webservice using these generated java classes. This works
> but regularly I get the following exception:
>
> {code:java}
> org.apache.cxf.interceptor.Fault: Could not send Message.
> at
> org.apache.cxf.interceptor.MessageSenderInterceptor$MessageSenderEndingInterceptor.handleMessage(MessageSenderInterceptor.java:67)
> ~[cxf-core-3.6.2.jar:3.6.2]
> at
> org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:307)
> ~[cxf-core-3.6.2.jar:3.6.2]
> at org.apache.cxf.endpoint.ClientImpl.doInvoke(ClientImpl.java:528)
> ~[cxf-core-3.6.2.jar:3.6.2]
> at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:439)
> ~[cxf-core-3.6.2.jar:3.6.2]
> at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:354)
> ~[cxf-core-3.6.2.jar:3.6.2]
> at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:312)
> ~[cxf-core-3.6.2.jar:3.6.2]
> at org.apache.cxf.frontend.ClientProxy.invokeSync(ClientProxy.java:96)
> ~[cxf-rt-frontend-simple-3.6.2.jar:3.6.2]
> at
> org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:140)
> ~[cxf-rt-frontend-jaxws-3.6.2.jar:3.6.2]
> at com.sun.proxy.$Proxy73.rltpreval(Unknown Source) ~[na:na]
> at com.example.demo.Blabla.onApplicationEvent(Blabla.java:46) ~[main/:na]
> at com.example.demo.Blabla.onApplicationEvent(Blabla.java:15) ~[main/:na]
> at
> org.springframework.context.event.SimpleApplicationEventMulticaster.doInvokeListener(SimpleApplicationEventMulticaster.java:178)
> ~[spring-context-5.3.30.jar:5.3.30]
> at
> org.springframework.context.event.SimpleApplicationEventMulticaster.invokeListener(SimpleApplicationEventMulticaster.java:171)
> ~[spring-context-5.3.30.jar:5.3.30]
> at
> org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:145)
> ~[spring-context-5.3.30.jar:5.3.30]
> at
> org.springframework.context.support.AbstractApplicationContext.publishEvent(AbstractApplicationContext.java:421)
> ~[spring-context-5.3.30.jar:5.3.30]
> at
> org.springframework.context.support.AbstractApplicationContext.publishEvent(AbstractApplicationContext.java:378)
> ~[spring-context-5.3.30.jar:5.3.30]
> at
> org.springframework.context.support.AbstractApplicationContext.finishRefresh(AbstractApplicationContext.java:941)
> ~[spring-context-5.3.30.jar:5.3.30]
> at
> org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:586)
> ~[spring-context-5.3.30.jar:5.3.30]
> at
> org.springframework.boot.SpringApplication.refresh(SpringApplication.java:732)
> ~[spring-boot-2.7.17.jar:2.7.17]
> at
> org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:409)
> ~[spring-boot-2.7.17.jar:2.7.17]
> at
> org.springframework.boot.SpringApplication.run(SpringApplication.java:308)
> ~[spring-boot-2.7.17.jar:2.7.17]
> at
> org.springframework.boot.SpringApplication.run(SpringApplication.java:1300)
> ~[spring-boot-2.7.17.jar:2.7.17]
> at
> org.springframework.boot.SpringApplication.run(SpringApplication.java:1289)
> ~[spring-boot-2.7.17.jar:2.7.17]
> at com.example.demo.DemoApplication.main(DemoApplication.java:14)
> ~[main/:na]
> Caused by: java.io.IOException: IOException invoking myurl:myport?wsdl:
> HTTP/1.1 header parser received no bytes
> at
> java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native
> Method) ~[na:na]
> at
> java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
> ~[na:na]
> at
> java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
> ~[na:na]
> at
> java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:490)
> ~[na:na]
> at
> org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.mapException(HTTPConduit.java:1452)
> ~[cxf-rt-transports-http-3.6.2.jar:3.6.2]
> at
> org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.close(HTTPConduit.java:1433)
> ~[cxf-rt-transports-http-3.6.2.jar:3.6.2]
> at
> org.apache.cxf.io.CacheAndWriteOutputStream.postClose(CacheAndWriteOutputStream.java:56)
> ~[cxf-core-3.6.2.jar:3.6.2]
> at
> org.apache.cxf.io.CachedOutputStream.close(CachedOutputStream.java:228)
> ~[cxf-core-3.6.2.jar:3.6.2]
> at
> org.apache.cxf.transport.AbstractConduit.close(AbstractConduit.java:56)
> ~[cxf-core-3.6.2.jar:3.6.2]
> at org.apache.cxf.transport.http.HTTPConduit.close(HTTPConduit.java:717)
> ~[cxf-rt-transports-http-3.6.2.jar:3.6.2]
> at
> org.apache.cxf.transport.http.HttpClientHTTPConduit.close(HttpClientHTTPConduit.java:112)
> ~[cxf-rt-transports-http-3.6.2.jar:3.6.2]
> at
> org.apache.cxf.interceptor.MessageSenderInterceptor$MessageSenderEndingInterceptor.handleMessage(MessageSenderInterceptor.java:63)
> ~[cxf-core-3.6.2.jar:3.6.2]
> ... 23 common frames omitted
> Caused by: java.io.IOException: HTTP/1.1 header parser received no bytes
> at
> java.net.http/jdk.internal.net.http.common.Utils.wrapWithExtraDetail(Utils.java:327)
> ~[java.net.http:na]
> at
> java.net.http/jdk.internal.net.http.Http1Response$HeadersReader.onReadError(Http1Response.java:673)
> ~[java.net.http:na]
> at
> java.net.http/jdk.internal.net.http.Http1AsyncReceiver.checkForErrors(Http1AsyncReceiver.java:297)
> ~[java.net.http:na]
> at
> java.net.http/jdk.internal.net.http.Http1AsyncReceiver.flush(Http1AsyncReceiver.java:263)
> ~[java.net.http:na]
> at
> java.net.http/jdk.internal.net.http.common.SequentialScheduler$SynchronizedRestartableTask.run(SequentialScheduler.java:175)
> ~[java.net.http:na]
> at
> java.net.http/jdk.internal.net.http.common.SequentialScheduler$CompleteRestartableTask.run(SequentialScheduler.java:147)
> ~[java.net.http:na]
> at
> java.net.http/jdk.internal.net.http.common.SequentialScheduler$SchedulableTask.run(SequentialScheduler.java:198)
> ~[java.net.http:na]
> at
> java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
> ~[na:na]
> at
> java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
> ~[na:na]
> at java.base/java.lang.Thread.run(Thread.java:829) ~[na:na]
> Caused by: java.io.EOFException: EOF reached while reading
> at
> java.net.http/jdk.internal.net.http.Http1AsyncReceiver$Http1TubeSubscriber.onComplete(Http1AsyncReceiver.java:591)
> ~[java.net.http:na]
> at
> java.net.http/jdk.internal.net.http.SocketTube$InternalReadPublisher$ReadSubscription.signalCompletion(SocketTube.java:632)
> ~[java.net.http:na]
> at
> java.net.http/jdk.internal.net.http.SocketTube$InternalReadPublisher$InternalReadSubscription.read(SocketTube.java:833)
> ~[java.net.http:na]
> at
> java.net.http/jdk.internal.net.http.SocketTube$SocketFlowTask.run(SocketTube.java:175)
> ~[java.net.http:na]
> at
> java.net.http/jdk.internal.net.http.common.SequentialScheduler$SchedulableTask.run(SequentialScheduler.java:198)
> ~[java.net.http:na]
> at
> java.net.http/jdk.internal.net.http.common.SequentialScheduler.runOrSchedule(SequentialScheduler.java:271)
> ~[java.net.http:na]
> at
> java.net.http/jdk.internal.net.http.common.SequentialScheduler.runOrSchedule(SequentialScheduler.java:224)
> ~[java.net.http:na]
> at
> java.net.http/jdk.internal.net.http.SocketTube$InternalReadPublisher$InternalReadSubscription.signalReadable(SocketTube.java:763)
> ~[java.net.http:na]
> at
> java.net.http/jdk.internal.net.http.SocketTube$InternalReadPublisher$ReadEvent.signalEvent(SocketTube.java:941)
> ~[java.net.http:na]
> at
> java.net.http/jdk.internal.net.http.SocketTube$SocketFlowEvent.handle(SocketTube.java:245)
> ~[java.net.http:na]
> at
> java.net.http/jdk.internal.net.http.HttpClientImpl$SelectorManager.handleEvent(HttpClientImpl.java:957)
> ~[java.net.http:na]
> at
> java.net.http/jdk.internal.net.http.HttpClientImpl$SelectorManager.lambda$run$3(HttpClientImpl.java:912)
> ~[java.net.http:na]
> at java.base/java.util.ArrayList.forEach(ArrayList.java:1541) ~[na:na]
> at
> java.net.http/jdk.internal.net.http.HttpClientImpl$SelectorManager.run(HttpClientImpl.java:912)
> ~[java.net.http:na] {code}
> Do you have any clue what's going on? I don't get the exception when using
> cxf 3.4 or 3.5.
>
--
This message was sent by Atlassian Jira
(v8.20.10#820010)