ジャージーでグローバル例外処理を行う方法はありますか?個々のリソースにtry/catchブロックがあり、すべての例外をサニタイズしてクライアントに送り返すメソッドを呼び出す代わりに、リソースが実際に呼び出される場所にこれを配置する方法があることを期待していました。これも可能ですか?もしそうなら、どのように?
代わりにsanitize(e)
、Jerseyサーブレットに対してある種のJersey構成の例外をどこでスローしますか。
@GET
public Object getStuff() {
try {
doStuff();
} catch (Exception e) {
ExceptionHandler.sanitize(e);
}
}
持っている:
@GET
public Object getStuff() throws Exception {
doStuff();
}
例外は、インターセプトしてそこから呼び出すことができるものにスローされますsanitize(e)
。
これは実際には、すべてのジャージーリソースを単純化し、クライアントに戻る例外が常に何らかの理解可能な形式であることを保証するためのものです。