Class WebClientBadRequestExceptionErrorResolver

java.lang.Object
com.broadleafcommerce.dataexchange.service.error.WebClientHttpRequestAwareErrorResolver
com.broadleafcommerce.dataexchange.service.error.WebClientBadRequestExceptionErrorResolver
All Implemented Interfaces:
ErrorResolver

@Order(2147483547) public class WebClientBadRequestExceptionErrorResolver extends WebClientHttpRequestAwareErrorResolver implements ErrorResolver
  • Field Details

  • Constructor Details

    • WebClientBadRequestExceptionErrorResolver

      public WebClientBadRequestExceptionErrorResolver(com.fasterxml.jackson.databind.ObjectMapper objectMapper, DataExchangeErrorProperties properties)
  • Method Details

    • canResolve

      public boolean canResolve(Throwable t)
      Description copied from interface: ErrorResolver
      Returns true if this resolver can map the exception to a readable error message.
      Specified by:
      canResolve in interface ErrorResolver
      Parameters:
      t - the exception
      Returns:
      true if this resolver can map the exception to a readable error message
    • resolve

      public DataExchangeError resolve(DataExchangeError error, Throwable t)
      Description copied from interface: ErrorResolver
      Maps the exception to a readable error message. The supplied error object will be initialized with DataExchangeError.getPath() populated. Implementations should handle populating any additional information that will be returned.

      It is possible for implementations to return a different error object than the one supplied. If this is needed, the returned error object should have the same path as the supplied error object.

      Specified by:
      resolve in interface ErrorResolver
      Parameters:
      error - The error object to populate.
      t - the exception
      Returns:
      a readable error message
    • handleBadRequestError

      protected void handleBadRequestError(DataExchangeError error, Map<String,Object> responseBodyMap, org.springframework.web.reactive.function.client.WebClientResponseException.BadRequest badRequest)
    • handleValidationException

      protected void handleValidationException(DataExchangeError error, Map<String,Object> responseBodyMap, org.springframework.web.reactive.function.client.WebClientResponseException.BadRequest exception)
    • deserializeResponseBody

      protected Map<String,Object> deserializeResponseBody(org.springframework.web.reactive.function.client.WebClientResponseException.BadRequest badRequest)
    • isValidationException

      protected boolean isValidationException(Map<String,Object> responseBody)
    • mapValidationException

      protected ValidationResponse mapValidationException(Map<String,Object> responseBody)
    • getObjectMapper

      protected com.fasterxml.jackson.databind.ObjectMapper getObjectMapper()