John McNair created CXF-6330:
--------------------------------

             Summary: HTTPConduit does not enforce configuration constraints
                 Key: CXF-6330
                 URL: https://issues.apache.org/jira/browse/CXF-6330
             Project: CXF
          Issue Type: Bug
          Components: Configuration
    Affects Versions: 3.0.4, 2.7.0
         Environment: Linux, Java 7
            Reporter: John McNair
            Priority: Minor


The documentation states that chunking cannot be used if either of these 
conditions are met:
- http-conf:basicAuthSupplier is configured to provide credentials preemptively
- AutoRedirect is set to true

It further states that setAllowChunking is ignored if one of those conditions 
are met.

See the docs here:
http://cxf.apache.org/docs/client-http-transport-including-ssl-support.html

This makes sense, so I think the intent behind the documentation is correct.  
However, it does not reflect the behavior of the code.

If the chunking threshold is met then:
setAutoRedirect(true), unsetAllowChunking() -> request is chunked
setAutoRedirect(true), setAllowChunking(true) -> request is chunked
setAutoRedirect(true), setAllowChunking(false) -> request is not chunked

So setAllowChunking() is not ignored.

I was intending to submit a patch, but when I started digging, it seems there 
are several classes which have some level of responsibility for interpreting 
the values in HTTPClientPolicy.  The most natural place to impose these 
restrictions would be HTTPClientPolicy so that all consumers would share a 
similar behavior.  However, that class is generated.

I'm not really sure where this should be fixed then.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to