cxf-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Sergio Santa (JIRA)" <j...@apache.org>
Subject [jira] [Comment Edited] (CXF-6099) endpoint responses gets truncated or blocked when writing soap messages with a size around 14K since we have upgraded to jdk8
Date Thu, 13 Nov 2014 10:09:34 GMT

    [ https://issues.apache.org/jira/browse/CXF-6099?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14209552#comment-14209552
] 

Sergio Santa edited comment on CXF-6099 at 11/13/14 10:09 AM:
--------------------------------------------------------------

Hi, 

I've performed more tests using jetty instead of netty. It looks different, but still the
client get hangs reading the response.
Please see the the attached log traces in the case. There is a log file for a success response
and another log file for a failed response.

Here are more details:

The traces on server side using LoggingOutInterceptor prints out the right information. The
SOAP message is complete.

The java version I'm currently using:

java version "1.8.0_25"
Java(TM) SE Runtime Environment (build 1.8.0_25-b18)
Java HotSpot(TM) 64-Bit Server VM (build 25.25-b02, mixed mode)


I've run the same test on java version jre6 and it works. (Previous environment before upgrading
to jre8)

java version "1.6.0_20"
Java(TM) SE Runtime Environment (build 1.6.0_20-b02)
Java HotSpot(TM) 64-Bit Server VM (build 16.3-b01, mixed mode)

I've run the same test on jre7  and it doesn't work either.

java version "1.7.0"
Java(TM) SE Runtime Environment (build 1.7.0-b147)
Java HotSpot(TM) 64-Bit Server VM (build 21.0-b17, mixed mode)

Please let me know if there is anything that I'm not aware.
Thanks.



was (Author: sersanca):
Hi, 

I've performed more tests using jetty instead of netty. It looks different, but still the
client get hangs reading the response.
Please see the the attached log traces of  a success and a failed response.
Here are more details:

The traces on server side using LoggingOutInterceptor prints out the right information. The
SOAP message is complete.


The java version Im 

java version "1.8.0_25"
Java(TM) SE Runtime Environment (build 1.8.0_25-b18)
Java HotSpot(TM) 64-Bit Server VM (build 25.25-b02, mixed mode)



> endpoint responses gets truncated or blocked when writing soap messages with a size around
14K since we have upgraded 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)

Mime
View raw message