Ho un paio di EJB che vengono chiamati da un servizio Web jax-rs. Tuttavia, ogni volta che chiamo uno dei metodi EJB, sto intercettando l'invocazione usando un intercettore. Questo intercettore controlla i parametri per una chiave API e se non è presente o non esiste nel mio database genererà un'eccezione che desidero rilevare nel mio codice jax-rs. Tuttavia, poiché la mia classe jax-rs non è a conoscenza della possibilità che questa eccezione venga lanciata anche se l'eccezione potrebbe essere un'eccezione controllata, quale sarebbe la migliore pratica qui?Dichiarare di lanciare un'eccezione senza mai lanciarlo
- Dichiarando la mia EJB a lanciare eccezioni (senza mai gettandosi)
- Rendere la mia eccezione un'eccezione incontrollata e il controllo di essa in ogni modo?
- Qualcos'altro?
Nota: se si lancia un'eccezione non controllata con EJB, è necessario utilizzare '@ ApplicationException', altrimenti il contenitore EJB eseguirà il rollback dell'eccezione e lo tradurrà in EJBException. –