CXF does not call ConduitSelector.complete() on the server side.
----------------------------------------------------------------

                 Key: CXF-2387
                 URL: https://issues.apache.org/jira/browse/CXF-2387
             Project: CXF
          Issue Type: Improvement
          Components: Core
            Reporter: Gyorgy Orban


I guess the main reason for it is that closing the input stream in a servlet is 
usually not a good idea. As the default implementation in 
PreexistingConduitSelector.complete() closes the input stream of the request 
message, it would cause problems when CXF is deployed in Jetty or in other 
servlet containers. On the other hand, from design and extensibility 
perspective it would be quite useful to call ConduitSelector.complete() 
similarly to the client side for the following reasons:

* integration with other transports could make use of such a lifecycle callback
* If the request InputStream is wrapped (let's say we want to monitor 
throughput or filter the inputstream for some reason) it is quite difficult to 
catch the end of the stream without a close() callback on the InputStream. If 
complete() was called, a custom ConduitSelector could solve that.

I think ConduitSelector.complete() could be included in the Destination 
implementations.
Could you please give your opinion on this?

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to