[ https://issues.apache.org/jira/browse/JCR-2733?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12904648#action_12904648 ]
Marcel Reutegger commented on JCR-2733: --------------------------------------- Please note that OR is also a keyword in JCR 1.0. See: http://www.day.com/specs/jcr/1.0/6.6.5.2_jcr_contains_Function.html > RepositoryException in xpath query with the "OR" keyword > -------------------------------------------------------- > > Key: JCR-2733 > URL: https://issues.apache.org/jira/browse/JCR-2733 > Project: Jackrabbit Content Repository > Issue Type: Bug > Components: query, xpath > Affects Versions: 1.6.2, 2.1.0, 2.1.1 > Reporter: fabrizio giustina > > Any string literal starting with "OR ", e.g.: > //*[jcr:contains(@title, 'OR ME')] > ends up in a javax.jcr.RepositoryException: > Exception building query: org.apache.lucene.queryParser.ParseException: > Cannot parse 'OR ME': Encountered " <OR> "OR "" at line 1, column 0. > I see this is due to the "OR" keyword interpreted by Lucene, like described > in http://stackoverflow.com/questions/1311304/keyword-or-and-search-in-lucene > Is this expected? Shouldn't jackrabbit escape the input string before > creating the lucene query, since this is implementation-specific and OR > should not AFAIK be a reserved word in properly delimited string literals in > xpath queries? > Also note that the similar "AND" keyword doesn't cause any problem. > In order to fix it I must check and replace any input string starting with > "OR" adding quotes or lowercasing: > //*[jcr:contains(@title, '"OR" ME')] > //*[jcr:contains(@title, 'or ME')] -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.