Я хочу вернуть код HTTPStatus динамически, например 400, 400, 404 и т. Д. В соответствии с ошибкой объекта ответа r. Ive ответил на этот вопрос - Programmatically change http response status using spring 3 restful Но это не помогает.Возвращает код состояния HTTP динамически в соответствии с запросом с помощью @ExceptionHandler
Ive этот класс контроллера с помощью метода @ExceptionHandler
@ExceptionHandler(CustomException.class)
@ResponseBody
public ResponseEntity<?> handleException(CustomException e) {
return new ResponseEntity<MyErrorResponse>(
new MyErrorResponse(e.getCode(), ExceptionUtility.getMessage(e.getMessage())),
ExceptionUtility.getHttpCode(e.getCode()));
}
ExceptionUtility класс, где я выше использовали два метода = GetMessage и Получить код
public class ExceptionUtility {
public static String getMessage(String message) {
return message;
}
public static HttpStatus getHttpCode(String code) {
return HttpStatus.NOT_FOUND; //how to return status code dynamically here ?
}
Я не хочу, чтобы проверить в если условие и возвращает код ответа соответственно, есть ли другой лучший подход для этого.
не существует лучшего способа, чем это? – user2340345
Вот как работает Spring Exception Handler. Если вы используете весну, вы можете пойти с этим. – Suraj