Image

Imagewanenhalf wrote in Imageru_java

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.TokenMgrError: Lexical error at line 1, column 54. Encountered: after : "")), либо данные не находятся.

Каким образом указать регулярные выражения при использовании LIKE в EJB QL?
По крайней мере '%' - 0 и более любых символов.