Я использую Elasticsearch Java API (версия 2.1.1) с Query String Query. Строка запроса вводится пользователем и может содержать синтаксические ошибки. Прямо сейчас кажется, что запрос отправляется на сервер, ответ shardFailure и генерируется исключение.Elasticsearch Java API: проверка строки запроса
Есть ли простой способ проверить запрос в API перед его отправкой на сервер? Прямо сейчас я уловил исключение, но мне нехорошо беспокоить сервер этими запросами.
Запрос построен следующим образом:
QueryBuilders.queryStringQuery("error)");
Пример ответа:
QueryParsingException [Не удалось обработать запрос [ошибка)]]; вложенная: NotSerializableExceptionWrapper [Невозможно разобрать 'ошибка)': Обнаружен " ")"") "" в строке 1, столбец 5.
редактировать: Чтобы было ясно: Это совершенно нормально для запроса для размещения специальных символов, таких как скобки или кавычки. Я просто хочу проверить, введен ли пользователь правильный поисковый запрос (например, все скобки/кавычки попарно).
Это не то, что я хочу. Специальные символы, такие как скобки, разрешены, но они должны быть в парах, чтобы быть синтаксически правильными. – moeTi
Что вы подразумеваете под парами? PLease указать – Richa
Если у вас есть две открывающиеся скобки, тогда вам также нужны два закрывающих, иначе это синтаксическая ошибка. – moeTi