Gestione dell’eccezione del livello di servizio nel metodo di frontend Java EE

Gestisco un’applicazione web che ha una pagina con il tag JSF <f:event . Ho riscritto un metodo in una class di servizio per generare un’eccezione aziendale. Tuttavia, quando viene generata l’eccezione aziendale, non viene catturata nel bean gestito e l’eccezione viene mostrata nella pagina. Sembra che il mio codice try/catch non funzioni.

In XHTML:

  

Metodo di ascolto in Managed Bean:

 private boolean canCreateResource; public void init(Enrollment enrollment) { (...) try { canCreateResource = resourceService.canCreateResource(enrollment); } catch (BusinessException e) { canCreateResource = false; } } 

Metodo in class di servizio:

 public boolean canCreateResource(Enrollment enrollment) { if (...) { if (mandateService.isCoordinator(user, course)) { return true; } else { throw new BusinessException("Undefined business rule."); } } return false; } 

Da quello che ho letto su altri siti, suppongo di dover implementare una class di gestori JSF. Ma quale e come?


MODIFICATO

OBS 1: la class BusinessException estende la class RuntimeException .

OBS 2: l’attributo canCreateResource stato creato per controllare il rendering di un pulsante.