Ошибка, сгенерированная в Hibernate Query для одного конкретного свойства - PullRequest
0 голосов
/ 03 мая 2018

Мы создали общий поисковый клиент для проекта, над которым я работаю. Это простой поисковый плагин, который позволяет нам искать свойства объекта.

например:

public class Movie {
    private String id;
    private String director;
    private String title;

    //set-getters
}

Если нам нужно найти конкретный фильм, мы можем сделать что-то вроде:

movie.title='some title'
movie.title='some title' and director='bob'

Если в какой-то момент времени мы добавим свойство X. Мы можем сделать:

movie.X='Y'

Без каких-либо изменений кода в нашем поисковом решении.

Это работает очень хорошо для нас (для основного поиска), но теперь я столкнулся с проблемой. У одного из наших объектов есть свойство, называемое «свойствами», и когда мы пытаемся найти его, выдается сообщение об ошибке.

"org.hibernate.hql.internal.ast.QuerySyntaxException: unexpected token: generatedAlias1 near line 1, column 149 [select generatedAlias0 from N as generatedAlias1, S as generatedAlias0 where ( N.properties is null ) and ( N.id=S.node )]

Сгенерированный запрос работает, если я запускаю его в своей локальной БД, когда я использую конечную точку поиска, он не выполняется. Свойства - это строковое поле в сущности и VARCHAR в БД.

Есть идеи, что пошло не так?

1 Ответ

0 голосов
/ 10 октября 2018

изменил 'properties' на 'options' .. кажется, свойства - это зарезервированное слово в базовых библиотеках построения запросов

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...