[ https://issues.apache.org/jira/browse/CXF-6099?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Sergio Santa updated CXF-6099: ------------------------------ Attachment: client_success.png client_fail.png Attached two screenshots where you can see the request and response from the cases when it fails and it run successfully. Those request matches with the JUnits tests attached previously and it have been taken using the TCPMon tool. > endpoint responses gets truncated or blocked writing soap messages with a > size around 14K after upgrade to jdk8 > --------------------------------------------------------------------------------------------------------------- > > Key: CXF-6099 > URL: https://issues.apache.org/jira/browse/CXF-6099 > Project: CXF > Issue Type: Bug > Components: JAX-WS Runtime, JAXB Databinding > Affects Versions: 3.0.2 > Environment: SO: Windows 7, linux fedora distribution. > JVM: jdk8 > Reporter: Sergio Santa > Labels: cxf-frontend, java8, jax-ws,, jaxb, jdk8 > Attachments: client_fail.png, client_success.png, test.zip > > > After upgrading to java 8 we are having an issue when our endpoint is sending > the responses to client. After digging into it, I realized that the endpoint > on server side truncates or gets blocked when writing a SOAP message bigger > 14KB (approximately). > The client reaches a timeout throwing the following exception: > WARNING: Interceptor for > {http://message.test/}IMessageTestService#{http://message.test/}runTestMethod > has thrown exception, unwinding now > org.apache.cxf.interceptor.Fault: Unmarshalling Error: Read timed out > at > org.apache.cxf.jaxb.JAXBEncoderDecoder.unmarshall(JAXBEncoderDecoder.java:882) > at > org.apache.cxf.jaxb.JAXBEncoderDecoder.unmarshall(JAXBEncoderDecoder.java:703) > at org.apache.cxf.jaxb.io.DataReaderImpl.read(DataReaderImpl.java:160) > at > org.apache.cxf.wsdl.interceptors.DocLiteralInInterceptor.handleMessage(DocLiteralInInterceptor.java:108) > at > org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:307) > at org.apache.cxf.endpoint.ClientImpl.onMessage(ClientImpl.java:798) > at > org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.handleResponseInternal(HTTPConduit.java:1638) > at > org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.handleResponse(HTTPConduit.java:1527) > at > org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.close(HTTPConduit.java:1330) > at > org.apache.cxf.transport.AbstractConduit.close(AbstractConduit.java:56) > at org.apache.cxf.transport.http.HTTPConduit.close(HTTPConduit.java:638) > at > org.apache.cxf.interceptor.MessageSenderInterceptor$MessageSenderEndingInterceptor.handleMessage(MessageSenderInterceptor.java:62) > at > org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:307) > at org.apache.cxf.endpoint.ClientImpl.doInvoke(ClientImpl.java:514) > at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:423) > at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:326) > at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:279) > at org.apache.cxf.frontend.ClientProxy.invokeSync(ClientProxy.java:96) > at > org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:138) > at com.sun.proxy.$Proxy41.runTestMethod(Unknown Source) > at test.message.client.TestClient.testWebservice(TestClient.java:39) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > at java.lang.reflect.Method.invoke(Method.java:483) > at > org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:47) > at > org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12) > at > org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:44) > at > org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17) > at > org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26) > at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:271) > at > org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:70) > at > org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:50) > at org.junit.runners.ParentRunner$3.run(ParentRunner.java:238) > at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:63) > at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:236) > at org.junit.runners.ParentRunner.access$000(ParentRunner.java:53) > at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:229) > at org.junit.runners.ParentRunner.run(ParentRunner.java:309) > at > org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:50) > at > org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38) > at > org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:459) > at > org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:675) > at > org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:382) > at > org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:192) > Caused by: javax.xml.bind.UnmarshalException > - with linked exception: > [com.ctc.wstx.exc.WstxIOException: Read timed out] > Attached Unit test where the issue can be reproduced easily. > Is there any maximum size for the SOAP Messages? > Same code was working on a previous JVM. (jdk6) > Not sure whether is a bug or not, but it stop working with java 8. > I would appreciate your help. > Thanks in advance. -- This message was sent by Atlassian JIRA (v6.3.4#6332)