You are viewing a plain text version of this content. The canonical link for it is here.
Posted to oak-commits@jackrabbit.apache.org by th...@apache.org on 2012/09/20 14:51:58 UTC

svn commit: r1388000 - in /jackrabbit/oak/trunk/oak-core/src: main/java/org/apache/jackrabbit/oak/query/QueryEngineImpl.java test/java/org/apache/jackrabbit/oak/query/QueryTest.java test/resources/org/apache/jackrabbit/oak/query/xpath.txt

Author: thomasm
Date: Thu Sep 20 12:51:57 2012
New Revision: 1388000

URL: http://svn.apache.org/viewvc?rev=1388000&view=rev
Log:
OAK-322 XPath query is included in the exception message

Modified:
    jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/query/QueryEngineImpl.java
    jackrabbit/oak/trunk/oak-core/src/test/java/org/apache/jackrabbit/oak/query/QueryTest.java
    jackrabbit/oak/trunk/oak-core/src/test/resources/org/apache/jackrabbit/oak/query/xpath.txt

Modified: jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/query/QueryEngineImpl.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/query/QueryEngineImpl.java?rev=1388000&r1=1387999&r2=1388000&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/query/QueryEngineImpl.java (original)
+++ jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/oak/query/QueryEngineImpl.java Thu Sep 20 12:51:57 2012
@@ -86,7 +86,11 @@ public class QueryEngineImpl {
             XPathToSQL2Converter converter = new XPathToSQL2Converter();
             String sql2 = converter.convert(statement);
             SQL2Parser parser = new SQL2Parser(vf);
-            q = parser.parse(sql2);
+            try {
+                q = parser.parse(sql2);
+            } catch (ParseException e) {
+                throw new ParseException(statement + " converted to SQL-2 " + e.getMessage(), 0);
+            }
         } else {
             throw new ParseException("Unsupported language: " + language, 0);
         }

Modified: jackrabbit/oak/trunk/oak-core/src/test/java/org/apache/jackrabbit/oak/query/QueryTest.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/test/java/org/apache/jackrabbit/oak/query/QueryTest.java?rev=1388000&r1=1387999&r2=1388000&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-core/src/test/java/org/apache/jackrabbit/oak/query/QueryTest.java (original)
+++ jackrabbit/oak/trunk/oak-core/src/test/java/org/apache/jackrabbit/oak/query/QueryTest.java Thu Sep 20 12:51:57 2012
@@ -134,12 +134,16 @@ public class QueryTest extends AbstractQ
                 } else if (line.startsWith("select") ||
                         line.startsWith("explain") ||
                         line.startsWith("measure") ||
-                        line.startsWith("sql1")) {
+                        line.startsWith("sql1") ||
+                        line.startsWith("xpath")) {
                     w.println(line);
                     String language = QueryEngineImpl.SQL2;
-                    if (line.startsWith("sql1")) {
+                    if (line.startsWith("sql1 ")) {
                         language = QueryEngineImpl.SQL;
                         line = line.substring("sql1 ".length());
+                    } else if (line.startsWith("xpath ")) {
+                        language = QueryEngineImpl.XPATH;
+                        line = line.substring("xpath ".length());
                     }
                     boolean readEnd = true;
                     for (String resultLine : executeQuery(line, language)) {

Modified: jackrabbit/oak/trunk/oak-core/src/test/resources/org/apache/jackrabbit/oak/query/xpath.txt
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/test/resources/org/apache/jackrabbit/oak/query/xpath.txt?rev=1388000&r1=1387999&r2=1388000&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-core/src/test/resources/org/apache/jackrabbit/oak/query/xpath.txt (original)
+++ jackrabbit/oak/trunk/oak-core/src/test/resources/org/apache/jackrabbit/oak/query/xpath.txt Thu Sep 20 12:51:57 2012
@@ -25,6 +25,9 @@
 
 # jackrabbit test queries
 
+xpath /jcr:root/testroot//*[0]
+java.text.ParseException: /jcr:root/testroot//*[0] converted to SQL-2 Query: select [jcr:path], [jcr:score], * from [nt:base] as a where 0(*)is not null and isdescendantnode(a, '/testroot'); expected: NOT, (
+
 xpath2sql /test
 select [jcr:path], [jcr:score], * from [nt:base] as a where name(a) = 'test' and issamenode(a, '/')