Я работаю над проектом с Elasticsearch и данными Spring Elicsearch.Получить сопоставление поля типа объекта в Spring Data Elasticsearch
Мне нужно получить отображение типа объекта моего индекса. Мой @document класс выглядит следующим образом:
@Document(indexName = "esbsdocuments", type = ESBSDocumentEls.MAPPING_TYPE)
public class ESBSDocumentEls extends ESBSDomainModel {
...
@Field(type =FieldType.Object, store = false)
private Object metadata;
...
}
Если я пытаюсь получить его через http://xxx:9200/_mapping я могу получить отображение для поля «метаданных» правильно:
...
"metadata": {
"properties": {
"APP": {
"type": "string"
},
"APPDST": {
"type": "string"
},
"APPSUB": {
"type": "string"
},
"COUNTSUB": {
"type": "string"
},
"DOMINIO": {
"type": "string"
},
"DUPLICATE": {
"type": "string"
},
"EXCLUDEFIELDNAMES": {
"type": "string"
},
"FECHA": {
"type": "string"
},
"ID": {
"type": "string"
},
"IDF": {
"type": "string"
},
"IDSUB": {
"type": "string"
},
"LOCALEDATE": {
"type": "string"
},
"MENSAJE": {
"type": "string"
},
"TAMANYO": {
"type": "string"
},
"TIPO": {
"type": "string"
},
"VERSION": {
"type": "string"
}
}
},
...
Но когда я пытаюсь это в коде с
Map mapping = elasticsearchTemplate.getMapping(ESBSDocumentEls.class);
я могу получить только:
... (definition of metadata dynamic templates)
metadata={type=object}
...
Как я могу получить подробное определение отображения с помощью ElasticSearchTemplate или другого класса Spring Data Elasticsearch?
спасибо!