jsr339-experts@jax-rs-spec.java.net

[jsr339-experts] response filtering and exceptions

From: Bill Burke <bburke_at_redhat.com>
Date: Wed, 11 Jul 2012 10:28:16 -0400

Hi all,

I think we need something in ContainerResponseFilter to distinguish that
an exception was thrown from application code (and maybe internally as
well). Came across a user case recently that wanted to know that a
failure occured and what exact exception.

I suggest at minimum, 2 methods on ContainerResponseContext (better
names maybe?). Probably similar methods on WriterInterceptor.


boolean wasFailure();
Throwable getFailure();

Don't know, but maybe also a new method on ContainerResponseFilter

void failure(ContainerRequestContext requestContext,
ContainerResponseContext responseContext)
             throws IOException;


failure should be called after any ExceptionMapper, but before anything
else.

The main reason for this is name-bound filters and interceptors might
want to make a different decision based on a user failure.





-- 
Bill Burke
JBoss, a division of Red Hat
http://bill.burkecentral.com