因此會導致像是透過 GET 去存取應該用 POST 存取的 URL 時,應該要吐的 405 Method Not Allowed 一起被攔截並轉成指定的 Response 了。
而單獨略過 WebApplicationException 的方法可以參考 [1]。
基本原理就只是檢查 Exception 是不是 WebApplicationException,是的話就把它內建的 Response 作為回應吐出去。
if (e instanceof WebApplicationException) {
// @see http://java.net/jira/browse/JERSEY-1607
WebApplicationException webApplicationException = (WebApplicationException) e;
return webApplicationException.getResponse();
}
參考資料:
1、Jersey: How to register a ExceptionMapper that omits some subclasses?
沒有留言:
張貼留言