EJB QL - like
Необходимо использовать конструкцию LIKE (с заданием регуляных выражений) и параметры поискового метода.
Если не использовать рег.експы - то все прекрасно работает:
SELECT OBJECT(r) from Region r WHERE r.title LIKE ?1
так же работает использование рег.експов, но без использования параметров:
SELECT OBJECT(r) from Region r WHERE r.title LIKE '23%'
но если нужно указать, что-то типа:
LIKE ?1% или LIKE "?1%" или LIKE '?1%' - то возникают разного рода ошибки - либо при деплое
(Reason: org.jboss.deployment.DeploymentException: Error compiling EJB-QL statement for EJB 'RegionEJB': SELECT OBJECT(r) from Region r WHERE r.title LIKE ?1%; - nested throwable: (org.jboss.ejb.plugins.cmp.ejbql.TokenMg rError: Lexical error at line 1, column 54. Encountered: after : "")), либо данные не находятся.
Каким образом указать регулярные выражения при использовании LIKE в EJB QL?
По крайней мере '%' - 0 и более любых символов.
Если не использовать рег.експы - то все прекрасно работает:
SELECT OBJECT(r) from Region r WHERE r.title LIKE ?1
так же работает использование рег.експов, но без использования параметров:
SELECT OBJECT(r) from Region r WHERE r.title LIKE '23%'
но если нужно указать, что-то типа:
LIKE ?1% или LIKE "?1%" или LIKE '?1%' - то возникают разного рода ошибки - либо при деплое
(Reason: org.jboss.deployment.DeploymentException:
Каким образом указать регулярные выражения при использовании LIKE в EJB QL?
По крайней мере '%' - 0 и более любых символов.
