elastic / elastic/elasticsearch-java

Error deserializing co.elastic.clients.elasticsearch._types.analysis.CharFilterDefinition: Unknown 'type' value: 'stconvert'

Open
#519 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Java
Stars
524
Forks
300
Avg merge
1d 11h
Merged PRs (30d)
16

Description

### Description

I am trying to create an index using a java client, and I have installed the `stconvert` plugin in the elasticsearch cluster (a plugin that provides replacement for both traditional and simplified Chinese), and I am getting this error during the index creation process.

My code implementation:
```java
Reader stconvertJson = new StringReader(
"{\"type\":\"stconvert\",\"delimiter\":\"#\",\"keep_both\":false,\"convert_type\":\"t2s\"}");
Map charFilterMap = new HashMap<>();
charFilterMap.put("tsconvert", new CharFilter.Builder()
.definition(new CharFilterDefinition.Builder().withJson(stconvertJson).build()).build());

CreateIndexRequest c = new CreateIndexRequest.Builder()
.index(index)
.aliases(aliases, a -> a
.isWriteIndex(true))
.settings(s -> s
.analysis(a -> a
.charFilter(charFilterMap) //this
.filter(filterMap)
.tokenizer(tokenizerMap)
.analyzer(analyzerMap))
.numberOfShards("1")
.numberOfReplicas("1"))
.mappings(typeMapping)
.build();
createIndexResponse = elasticClient.indices().create(c);
```
found that this is not feasible, and also in order to be able to pass serialization, I also tried to implement `CharFilterDefinitionVariant` to do it, similar to `HtmlStripCharFilter`, but eventually failed because `CharFilterDefinition.Kind` could not satisfy me.

So I was wondering if elasticsearch has additional plugins to build index in the java client, how should I go about doing that or inherit the implementation code?

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.