Details
-
Bug
-
Resolution: Solved By
-
Major
-
None
-
10.3
-
Easy
-
Description
You can reproduce with the following code:
{{velocity}} #set ($statement = 'from doc.object(XWiki.XWikiUsers) as user where user.first_name like :input') $services.query.xwql($statement).bindValue('input').literal('ad').anyChars().query().execute() {{/velocity}}
It works if I use:
$services.query.xwql($statement).bindValue('input', 'ad%').execute()
The stack trace ends with:
Caused by: java.lang.RuntimeException: Invalid HQL query [ select doc.fullName from XWikiDocument as doc , BaseObject as user , com.xpn.xwiki.objects.StringProperty as user_first_name1 where ( user_first_name1.value like :input ) and doc.fullName=user.name and user.className='XWiki.XWikiUsers' and user_first_name1.id.id=user.id and user_first_name1.id.name='first_name' ] at org.xwiki.query.internal.EscapeLikeParametersQuery.getStatement(EscapeLikeParametersQuery.java:121) at com.xpn.xwiki.store.hibernate.query.HqlQueryExecutor.createHibernateQuery(HqlQueryExecutor.java:220) at com.xpn.xwiki.store.hibernate.query.HqlQueryExecutor$1.doInHibernate(HqlQueryExecutor.java:183) at com.xpn.xwiki.store.hibernate.query.HqlQueryExecutor$1.doInHibernate(HqlQueryExecutor.java:178) at com.xpn.xwiki.store.XWikiHibernateBaseStore.execute(XWikiHibernateBaseStore.java:921) ... 186 more Caused by: net.sf.jsqlparser.JSQLParserException at net.sf.jsqlparser.parser.CCJSqlParserUtil.parse(CCJSqlParserUtil.java:55) at org.xwiki.query.internal.EscapeLikeParametersQuery.modifyStatement(EscapeLikeParametersQuery.java:138) at org.xwiki.query.internal.EscapeLikeParametersQuery.getStatement(EscapeLikeParametersQuery.java:119) ... 190 more Caused by: net.sf.jsqlparser.parser.ParseException: Encountered unexpected token: "." "." at line 1, column 92. Was expecting one of: "," ";" "ACTION" "ANY" "AS" "CASCADE" "CAST" "COLUMN" "COMMIT" "CONNECT" "CROSS" "DO" "ENABLE" "END" "EXCEPT" "EXTRACT" "FIRST" "FOLLOWING" "FOR" "FULL" "GROUP" "HAVING" "INDEX" "INNER" "INSERT" "INTERSECT" "JOIN" "KEY" "LAST" "LEFT" "MATERIALIZED" "MINUS" "NATURAL" "NO" "NULLS" "OPEN" "ORDER" "OVER" "PARTITION" "PERCENT" "PIVOT" "PRECISION" "PRIMARY" "PRIOR" "RANGE" "REPLACE" "RIGHT" "ROW" "ROWS" "SEPARATOR" "SIBLINGS" "START" "TABLE" "TEMP" "TEMPORARY" "TRUNCATE" "UNION" "UNSIGNED" "VALUE" "VALUES" "WHERE" "XML" <EOF> <K_DATETIMELITERAL> <S_CHAR_LITERAL> <S_IDENTIFIER> <S_QUOTED_IDENTIFIER> at net.sf.jsqlparser.parser.CCJSqlParser.generateParseException(CCJSqlParser.java:18047) at net.sf.jsqlparser.parser.CCJSqlParser.jj_consume_token(CCJSqlParser.java:17900) at net.sf.jsqlparser.parser.CCJSqlParser.Statement(CCJSqlParser.java:91) at net.sf.jsqlparser.parser.CCJSqlParserUtil.parse(CCJSqlParserUtil.java:53) ... 192 more
Attachments
Issue Links
- duplicates
-
XWIKI-15680 Upgrade to JSqlParser 1.3
- Closed