diff --git a/src/main/java/org/springframework/data/elasticsearch/client/reactive/DefaultReactiveElasticsearchClient.java b/src/main/java/org/springframework/data/elasticsearch/client/reactive/DefaultReactiveElasticsearchClient.java index b3863985a..e1b87ab0e 100644 --- a/src/main/java/org/springframework/data/elasticsearch/client/reactive/DefaultReactiveElasticsearchClient.java +++ b/src/main/java/org/springframework/data/elasticsearch/client/reactive/DefaultReactiveElasticsearchClient.java @@ -94,7 +94,6 @@ import org.elasticsearch.search.SearchHit; import org.elasticsearch.search.SearchHits; import org.elasticsearch.search.aggregations.Aggregation; import org.reactivestreams.Publisher; - import org.springframework.data.elasticsearch.client.ClientConfiguration; import org.springframework.data.elasticsearch.client.ClientLogger; import org.springframework.data.elasticsearch.client.ElasticsearchHost; @@ -113,7 +112,6 @@ import org.springframework.lang.Nullable; import org.springframework.util.Assert; import org.springframework.util.ObjectUtils; import org.springframework.util.ReflectionUtils; -import org.springframework.web.client.HttpServerErrorException; import org.springframework.web.reactive.function.BodyExtractors; import org.springframework.web.reactive.function.client.ClientRequest; import org.springframework.web.reactive.function.client.ClientResponse; @@ -806,9 +804,10 @@ public class DefaultReactiveElasticsearchClient implements ReactiveElasticsearch private Publisher handleServerError(Request request, ClientResponse response) { - return Mono.error( - new HttpServerErrorException(response.statusCode(), String.format("%s request to %s returned error code %s.", - request.getMethod(), request.getEndpoint(), response.statusCode().value()))); + RestStatus status = RestStatus.fromCode(response.statusCode().value()); + + return Mono.error(new ElasticsearchStatusException(String.format("%s request to %s returned error code %s.", + request.getMethod(), request.getEndpoint(), response.statusCode().value()), status)); } private Publisher handleClientError(String logId, Request request, ClientResponse response, @@ -828,8 +827,7 @@ public class DefaultReactiveElasticsearchClient implements ReactiveElasticsearch return Mono.error(new ElasticsearchStatusException(sb.toString(), status, exception)); } } catch (Exception e) { - return Mono - .error(new ElasticsearchStatusException(content, status)); + return Mono.error(new ElasticsearchStatusException(content, status)); } return Mono.just(content); }).doOnNext(it -> ClientLogger.logResponse(logId, response.statusCode(), it)) //