Witam
Po kilkugodzinnej walce postanowiłem napisać temat na forum. Sprawa wygląda następująco...
Piszę aplikację wilowarstową (model, view, controller, service) korzystając z frameworków Spring (IOC i MVC) oraz Hibernate. I pojawił się pewien problem. Użytkownij rejestruje się na mojej stronie internetowej, wypełnia widok, binduje się on na model i następuje zapis danych. Co jeśli w tym momencie zostanie rzucony wyjątek w klasie serwisu
try {
userBO.save(users);
} catch (Exception ex) {
Logger.getLogger(RegisterService.class.getName()).log(Level.SEVERE, null, ex);
}
Założmy że jest to wyjątek org.springframework.dao.DataIntegrityViolationException.
Da się jakoś przekierować użytkownika na ludzko wyglądającą strone informującą o problemach w działaniu systemu ?
Nie chodzi mi tutaj o jakis redirect w każym catch'u lecz skorzystanie z jakiegoś gotowego mechanizmu.
Wiem o SimpleMappingExceptionResolver lecz działa on tylko gdy wyjątek jest 'unchecked' czyli nie jest obsłużony przez blok try catch np. jeśli wykonam w kontrolerze bądz serwisie kod:
int a = 10/0;
Mechanizm działa poprawnie i przekierowuje mnie na stronę błędu. Ale co z resztą wyjątków które wymagają obsługi poprzez blok try catch ?