Как правильно реализовать обработку ошибок? Например, мой уровень доступа к данным может потенциально выдавать 2 типа ошибок:
1) несанкционированный доступ, в этом случае страница должна все скрыть и просто показать сообщение об ошибке
2) ошибки, информирующие пользователя о том, что что-то подобное уже существует в базе данных (например, имя не уникально - например), и в этом случае я бы не хотел скрывать все.
РЕДАКТИРОВАНИЕ:
В результате некоторых комментариев здесь я придумал, что мне следует создавать производные специализированные типы исключений, такие как NotAuthorizedException, DuplicateException и т. Д. И т. Д. ... все в порядке, но я потенциально могу увидеть 2 проблемы:
1) Каждый сохраненный процесс имеет поле возврата p_error, в котором содержится сообщение об ошибке. После получения данных из БД мне нужно проверить это поле, чтобы увидеть, какой тип ошибки был возвращен, чтобы я мог выдавать соответствующие исключения. Итак, мне все еще нужно где-то хранить свои типы ошибок / сообщения об ошибках ..... Другими словами, как мне передать точное сообщение пользователю (в определенное время), без предварительной проверки поля p_error. Что возвращает меня к объекту ошибки. Кто-нибудь?
2) Я могу это потенциально превратить в кошмар, где количество исключений равно количеству типов сообщений об ошибках.
Я что-то здесь упускаю?
Большое спасибо всем!