Я хочу использовать перехватчик для моего компонента, который проверяет правильность данного токена подключения.Каков правильный способ справиться с Исключениями в перехватчиках в EJB3?
Если соединение недействительно, я хочу бросить конкретное исключение, если соединение истекло, я хочу отправить другое (TokenExpiredException, что-то вроде этого). Эти Исключения включены в интерфейс, предоставленный клиенту.
@AroundInvoke
public Object checkParams(InvocationContext ctx) throws TokenExpiredException, Exception{
//code to check token
//...
throw new TokenExpiredException();
}
Из того, что я пробовал, бросая такие специфические исключения в перехватчик приводит к UndeclaredThrowableException
на стороне клиента. Хотя это исключение включает ссылку на причину, оно не является идеальным и не может быть рассмотрено с регулярными предложениями catch.
Каков правильный способ объявления различных типов исключений с помощью перехватчиков?