|
From: Bill B. <bb...@re...> - 2013-10-17 21:10:23
|
Unfortunately, you are responsible for cleaning up the connection
yourself. You must do:
try {
... do something with client ...
} catch (WebApplicationException ex) {
ex.getResponse().close();
}
This is because the response may contain an entity that the user wants
to access. I'm pretty sure we're not allowed to automatically close the
underlying Response object.
On 10/17/2013 10:01 AM, Anthony Whitford wrote:
> I discovered a particularly nasty problem using the Resteasy Client
> Framework and have documented it in the issue tracker:
> https://issues.jboss.org/browse/RESTEASY-963
>
> In a nutshell, if a Client Proxy instance makes a call to the service
> and the service throws an exception, the Client is now rendered
> inoperable because the underlying connection is not adequately reset.
>
> A sample project is included with the issue that demonstrates the
> problem. Note that there is a scenario (when a connection pool no
> longer has a valid connection available) where the call becomes FROZEN!
>
> If I had to guess on the solution, I would say that the invoke method
> of ClientInvoker needs to catch the exception and release the underlying
> connection in the event of an exception.
>
> https://github.com/resteasy/Resteasy/blob/master/jaxrs/resteasy-client/src/main/java/org/jboss/resteasy/client/jaxrs/internal/proxy/ClientInvoker.java#L104
>
> I think this is similar to the issue raised by John D. Ament on the
> 15th. (Resteasy should automatically clean up
> the connection, but this can not be limited to a GC event because we
> have no control over GC events.)
>
> I look forward to seeing this fixed as this is a serious stability risk.
> Thank you,
>
> Anthony
>
>
>
> ------------------------------------------------------------------------------
> October Webinars: Code for Performance
> Free Intel webinars can help you accelerate application performance.
> Explore tips for MPI, OpenMP, advanced profiling, and more. Get the most from
> the latest Intel processors and coprocessors. See abstracts and register >
> http://pubads.g.doubleclick.net/gampad/clk?id=60135031&iu=/4140/ostg.clktrk
>
>
>
> _______________________________________________
> Resteasy-users mailing list
> Res...@li...
> https://lists.sourceforge.net/lists/listinfo/resteasy-users
>
--
Bill Burke
JBoss, a division of Red Hat
http://bill.burkecentral.com
|