Intercept and rethrow a Java unhandled exception -


i've coded method catch-all handler, need rethrow exception if unhandled, caller (much) further call stack can handle it. trivial way simply:

try {    ... } catch (exception ex) {    // here...    // , rethrow    throw ex; } 

but problem that, because of throw statement, java requires method declare throws exception, in turn, requires callers handle exception or declare throws exception. , on call chain...

is there simple way rethrow exception if current method did not handle it?

you @radoh has said , wrap runtimeexception, 1 downside of stacktrace polluted , show offending line declare throw new runtimeexception(ex).

an alternative use lomboks sneakythrows mechanism, this:

public static void main(string[] args) {     methodwithexception(); }  private static void methodwithexception() {     try {         throw new exception("hello");     } catch (exception e) {         lombok.sneakythrow(e);     } } 

your stacktrace remain intact, no longer need declare throws exception.

it's worth reading documentation on why should/shouldn't this


Comments

Popular posts from this blog

javascript - jQuery: Add class depending on URL in the best way -

caching - How to check if a url path exists in the service worker cache -

Redirect to a HTTPS version using .htaccess -