Bonjour!
J'utilise cet analyzer:
Le champ concerné est celui-ci:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23 { "index": { "number_of_shards": 1, "analysis": { "filter": { "word_joiner": { "type": "word_delimiter", "catenate_all": true, "preserve_original": true } }, "analyzer": { "word_join_analyzer": { "type": "custom", "filter": [ "word_joiner" ], "tokenizer": "keyword" } } } } }
Et ça c'est ma sclasse Description:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 @Field(type = FieldType.Object, analyzer = "word_join_analyzer") private Description description;
Voilà ce qu edonne le mapping Elasticsearch:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 public class Description { @JsonProperty("localizedDescriptions") private Map<String, String> descriptions = new HashMap<>(); }
L'analyzer n'est donc pas appliqué. Comment je peux faire dans ce cas? surtout que mon objet contient une map?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 { "description":{ "properties":{ "localizedDescriptions":{ "properties":{ "en":{ "type":"string" }, "fr":{ "type":"string" }, "it":{ "type":"string" } } } } } }
Merci!
Partager