[
https://issues.apache.org/jira/browse/CXF-6544?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14934990#comment-14934990
]
Sergey Beryozkin commented on CXF-6544:
---------------------------------------
Yes, making sure close() is called can be easily done from AbstractClient,
wrapping an abstract doWriteBody call.
I guess HttpUrlConnection simply calls close() on its OutputStream so if we
start calling close() earlier - would that cause side-effects, i.e, would that
upset somehow HTTP writes ?
But also : the headers have already been written by that time so it won't work
after all, how would you pass the digest value ?
> OutputStream#close not called for WriterInterceptor
> ---------------------------------------------------
>
> Key: CXF-6544
> URL: https://issues.apache.org/jira/browse/CXF-6544
> Project: CXF
> Issue Type: Bug
> Reporter: Romain Manni-Bucau
>
> Hi
> close() is called later in the JAXRS client lifecycle so no way to add code
> properly at this moment:
> {code}
> ClientBuilder.newBuilder()
> .build()
> .register(new WriterInterceptor() {
> @Override
> public void aroundWriteTo(final WriterInterceptorContext
> writerInterceptorContext) throws IOException, WebApplicationException {
> writerInterceptorContext.setOutputStream(new
> FilterOutputStream(writerInterceptorContext.getOutputStream()) {
> @Override
> public void close() throws IOException {
> // need code here
> super.close();
> }
> });
> }
> })
> {code}
> Overall idea can need more work since i'd like to be able to add a final
> trailer to a HTTP chunk communication.
> Managed to do it with httpclient but I'd like to stick to JAXRS 2 if possible.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)