hey guys. i want to ask for some help. in my service i do some checks and throw custom exceptions which later i handle in RestResponseEntityExceptionHandler. it looks like this:
@ControllerAdvice
@Slf4j
public class RestResponseEntityExceptionHandler extends ResponseEntityExceptionHandler {
@ExceptionHandler(value={NoCustomerException.class})
protected ResponseEntity<Object> handleNoCustomerException(NoCustomerException noCustomerException, WebRequest webRequest) {
String responseBody = noCustomerException.getMessage();
return handleExceptionInternal(noCustomerException, responseBody,new HttpHeaders(), HttpStatus.BAD_REQUEST, webRequest);
}
@ExceptionHandler(value={NoEarlierPaymentException.class})
protected ResponseEntity<Object> handleNoEarlierPaymentException(NoEarlierPaymentException noEarlierPaymentException, WebRequest webRequest) {
String responseBody = noEarlierPaymentException.getMessage();
return handleExceptionInternal(noEarlierPaymentException, responseBody,new HttpHeaders(), HttpStatus.BAD_REQUEST, webRequest);
}
}
currently i return only error message string. but i need to return this type of array:
Name Type Length Description
code Integer 10 13001
Message* String 200 Invalid signature
which in response looks like this:
[{"code":13001,"message":"Invalid signature"}]
so i was wondering, since im given fields' types and lengths, should i have a DTO/object which id return? how to aproach it? thanks