У меня есть следующие документы
@Document(indexName = IndexNames.ORGANIZATION_INDEX, type = Types.ORGANIZATION_TYPE)
public class OrganizationDocument implements Serializable {
@Id
private Long id;
private String name;
....
}
и
@Document(indexName = IndexNames.USER_INDEX, type = Types.USER_TYPE)
public class UserDocument implements Serializable {
@Id
@Field(type = FieldType.Keyword)
private String id;
private OrganizationDocument organization;
private String email;
private String firstName;
private String lastName;
...
}
Чего я пытаюсь добиться, так это обновить OrganizationDocument в UserDocument после первоначальных изменений OrganizationDocument (имя e.t.c)
Для этого я пытаюсь использовать ElasticsearchTemplate
Я использовал что-то вроде
IndexRequest indexRequest = new IndexRequest();
indexRequest.source("organization", organizationDocument);
UpdateQuery updateQuery = new UpdateQueryBuilder().withId(userDocument.getId()).withClass(UserDocument.class).withIndexRequest(indexRequest).build();
elasticsearchTemplate.update(updateQuery);
Но я не могу написать xcontent для неизвестного значения типа class ... OrganizationDocument.
Не могли бы вы дать предложение, как сделать частичное обновление для встроенного объекта OrganizationDocument?
Спасибо.