Я пишу веб-службу на Java, і намагаюся визначити найкращий спосіб визначення кодів помилок та пов'язаних з ними рядків помилок . Мені потрібно мати числовий код помилки та рядок помилок, згруповані разом. І код помилки, і рядок помилки будуть надіслані клієнту, який отримує доступ до веб-служби. Наприклад, коли виникає SQLException, я можу зробити таке:
// Example: errorCode = 1,
// errorString = "There was a problem accessing the database."
throw new SomeWebServiceException(errorCode, errorString);
Клієнтській програмі може бути показано повідомлення:
"Виникла помилка: виникла проблема з доступом до бази даних."
Моя перша думка полягала в тому, щоб використати Enum
коди помилок і замінити toString
методи повернення рядків помилок. Ось що я придумав:
public enum Errors {
DATABASE {
@Override
public String toString() {
return "A database error has occured.";
}
},
DUPLICATE_USER {
@Override
public String toString() {
return "This user already exists.";
}
},
// more errors follow
}
Моє запитання: чи є кращий спосіб зробити це? Я вважаю за краще рішення в коді, а не читання із зовнішнього файлу. Я використовую Javadoc для цього проекту, і матиме можливість документувати коди помилок в режимі рядка та автоматично їх оновлювати в документації.