Vadim Beilin created CXF-9135: --------------------------------- Summary: Second async javax call fails with allowChunking=false Key: CXF-9135 URL: https://issues.apache.org/jira/browse/CXF-9135 Project: CXF Issue Type: Bug Components: JAX-WS Runtime Affects Versions: 4.1.1 Reporter: Vadim Beilin Attachments: ShowBug.java
The second call to an asynchronous web method is failing when using the JDK HttpClient-based conduit and allowChunking set to false. Logs show that the while the first request has correct conetnt-length, the second request has Transfer-encoding: chunked, and the body is not sent at all. Here are three requests received by the server. Here are 3 requests received by the server (WSDL and two web methods): {noformat} ID: 1 Address: http://localhost:12345/Service?wsdl Http-Method: GET Content-Type: Headers: {Accept=[*/*], connection=[Upgrade, HTTP2-Settings], Content-Length=[0], Content-Type=[null], Host=[localhost:12345], HTTP2-Settings=[AAEAAEAAAAIAAAABAAMAAABkAAQBAAAAAAUAAEAA], Upgrade=[h2c], User-Agent=[Apache-CXF/4.1.1]} {noformat} {noformat} ID: 2 Address: http://localhost:12345/Service Encoding: UTF-8 Http-Method: POST Content-Type: text/xml; charset=UTF-8 Headers: {Accept=[*/*], connection=[Upgrade, HTTP2-Settings], Content-Length=[152], content-type=[text/xml; charset=UTF-8], Host=[localhost:12345], HTTP2-Settings=[AAEAAEAAAAIAAAABAAMAAABkAAQBAAAAAAUAAEAA], SOAPAction=[""], Upgrade=[h2c], User-Agent=[Apache-CXF/4.1.1]} Payload: <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"><soap:Body><respond xmlns="http://test">blah</respond></soap:Body></soap:Envelope> {noformat} {noformat} ID: 3 Address: http://localhost:12345/Service Encoding: UTF-8 Http-Method: POST Content-Type: text/xml; charset=UTF-8 Headers: {Accept=[*/*], connection=[Upgrade, HTTP2-Settings], content-type=[text/xml; charset=UTF-8], Host=[localhost:12345], HTTP2-Settings=[AAEAAEAAAAIAAAABAAMAAABkAAQBAAAAAAUAAEAA], SOAPAction=[""], transfer-encoding=[chunked], Upgrade=[h2c], User-Agent=[Apache-CXF/4.1.1]} {noformat} I'm attaching a test class that demonstrates the issue. For the failure to happen, we need * to use the new default HttpClient-based conduit (URLConnection-based conduit works) * {{allowChunking}} to be set to false (not set or set to true works) * an asyncronous service method to be used (synchronous method works) -- This message was sent by Atlassian Jira (v8.20.10#820010)