[
https://issues.apache.org/jira/browse/CXF-7822?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16589028#comment-16589028
]
Colm O hEigeartaigh commented on CXF-7822:
------------------------------------------
Could you help to try to narrow down when the regression occurred? Is it
present in CXF 3.2.0 for example (3.1.0, 3.0.0?)
> CXF 3.2.x gets Error 400 when communicating with IIS, 2.7.x does not
> --------------------------------------------------------------------
>
> Key: CXF-7822
> URL: https://issues.apache.org/jira/browse/CXF-7822
> Project: CXF
> Issue Type: Bug
> Components: Core, Transports
> Affects Versions: 3.2.5, 3.2.6
> Environment: Windows Server 2012
> JDK 8u152 unlimited strength encryption.
> Reporter: Jimmy Selgen Nielsen
> Priority: Minor
>
> On CXF 3.2.x, When calling a .NET webservice hosted by IIS, using MTOM and
> chunked transfer encoding, we get "Error 400 : Bad Request".
> Using 2.7.18, the same code works flawlessly.
> The requests are almost identical except for content-type for the attachments
> and a CR in the signature.
>
> One thing we noticed was that 2.7.x. sends an empty packet after the SOAP
> envelope (before the first attachment), where 3.2.6 does not. It is only the
> first empty packet that is missing.
> From the IIS trace it looks like this (missing packet highlighted)
> {{102 NOTIFY_MODULE_START}}
> {{103 GENERAL_READ_ENTITY_START}}
> {{104 GENERAL_READ_ENTITY_END}}
> {{105 GENERAL_REQUEST_ENTITY}}
> {{106 NOTIFY_MODULE_COMPLETION {color:#FF0000}<------- MISSING ON
> 3.2.x{color}}}
> {{}}{{GENERAL_READ_ENTITY_START}}
> {{108 GENERAL_READ_ENTITY_END}}
> {{109 GENERAL_REQUEST_ENTITY}}{{...}}
> {{118 NOTIFY_MODULE_COMPLETION}}
> {{119 GENERAL_READ_ENTITY_START}}
> {{120 GENERAL_READ_ENTITY_END 0 bytes}}
>
>
> The client setup is identical between both versions
> {{BindingProvider bp = ((BindingProvider) port);}}
> {{bp.getRequestContext().put(BindingProvider.ENDPOINT_ADDRESS_PROPERTY,
> "https://somewhere.dk/SomeService.svc");}}
> {{SOAPBinding soapBinding = (SOAPBinding) bp.getBinding();}}
> {{soapBinding.setMTOMEnabled(true);}}{{HTTPConduit http = (HTTPConduit)
> client.getConduit();}}
> {{HTTPClientPolicy httpClientPolicy = new HTTPClientPolicy();}}
> {{httpClientPolicy.setConnectionTimeout(0);}}
> {{httpClientPolicy.setReceiveTimeout(0);}}
> {{httpClientPolicy.setAllowChunking(true);}}
> {{httpClientPolicy.setChunkLength(8192);}}
> {{http.setClient(httpClientPolicy);}}
>
> Code used for sending data:
> {{DataSource source = new FileDataSource(file);}}
> {{DataHandler dh = new DataHandler(source);}}
> {{Port.submit(dh);}}
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)