Spring Data Elasticsearch - Как частично обновить документ с помощью объекта? - PullRequest
0 голосов
/ 06 ноября 2018

У меня есть приложение эластичного поиска данных пружины и документ, в котором поле является еще одним DTO. Когда я сохраняю документ, он сохраняет это поле как json, однако, когда я хочу частично обновить его, он всегда сохраняет это поле как String. Как это решить?

Вот мой код обновления, где SearchAndMatchData - это DTO, который я хочу обновить

void updateSearchAndMatchField(final String listingId, final SearchAndMatchData data) {
        final IndexRequest indexRequest = new IndexRequest();
        indexRequest.source("searchAndMatchData", data);
        final UpdateQuery updateQuery = new UpdateQueryBuilder().withId(listingId).withClass(ListingsData.class).withIndexRequest(indexRequest).build();
        synchronized (this) {
            elasticsearchTemplate.update(updateQuery);
        }
    }
...