Функция анализа Jest клиента не работает в ES 6.5.4 - PullRequest
0 голосов
/ 04 апреля 2019

Я использую Jest Client функцию анализа для анализа текста. Я использую Jest-клиент версии 5.3.4 и ES 6.5.4. Вот код:

Analyze.Builder AnalyzeBuilder = new Analyze.Builder().index(index.name).text(textToAnalyze).analyzer(analyzer);
        JestResult jestResult = null;
        JestClient client = getClient(index.cluster); // fetches client from the pool
            Analyze analyze = AnalyzeBuilder.build();
            System.out.println(analyze.toString());
            jestResult = client.execute(analyze);
        System.out.println(jestResult.getJsonString());
        assertNotNull(jestResult);
        assertTrue(jestResult.isSucceeded());

Возвращается с ответом ниже:

{"error":{"root_cause":[{"type":"illegal_argument_exception","reason":"request [/mytest-ff3f0473-e20e-4926-b983-4cf466b0b397/_analyze] contains unrecognized parameter: [analyzer]"}],"type":"illegal_argument_exception","reason":"request [/mytest-ff3f0473-e20e-4926-b983-4cf466b0b397/_analyze] contains unrecognized parameter: [analyzer]"},"status":400}

Вот вывод toString переменной «анализ».

Analyze{uri=mytest-ff3f0473-e20e-4926-b983-4cf466b0b397/_analyze?analyzer=multilingual_english, method=POST}

Кажется, параметр "анализатор" в строке запроса больше не работает. Работает при отправке в формате JSON. Ниже работает запрос.

{"analyzer" : "standard", "text" : "while processing data"}

Есть ли способ заставить JestClient отправить параметр анализатора в JSON?

1 Ответ

0 голосов
/ 07 апреля 2019

Я обратился в службу поддержки searchly.com.Они ответили, что JestClient 5.3.4 может не работать с ES 6.5.3 и порекомендовали использовать последнюю версию 6.3.1.

Я пробовал, а JestClient 6.3.1 работает с ElasticSearch 6.5.4.

Спасибо

...