You are viewing a plain text version of this content. The canonical link for it is here.
Posted to cvs@cocoon.apache.org by vg...@apache.org on 2006/06/13 14:25:55 UTC

svn commit: r413885 - in /cocoon/branches/BRANCH_2_1_X: src/blocks/databases/java/org/apache/cocoon/transformation/SQLTransformer.java status.xml

Author: vgritsenko
Date: Tue Jun 13 05:25:55 2006
New Revision: 413885

URL: http://svn.apache.org/viewvc?rev=413885&view=rev
Log:
    <action dev="VG" type="fix" fixes-bug="COCOON-1247">
      Databases: Support multiple results in SQLTransformer.
    </action>
    <action dev="VG" type="fix" fixes-bug="COCOON-1552">
      Databases: Fix NPE in SQLTransformer in error handling code.
    </action>

Modified:
    cocoon/branches/BRANCH_2_1_X/src/blocks/databases/java/org/apache/cocoon/transformation/SQLTransformer.java
    cocoon/branches/BRANCH_2_1_X/status.xml

Modified: cocoon/branches/BRANCH_2_1_X/src/blocks/databases/java/org/apache/cocoon/transformation/SQLTransformer.java
URL: http://svn.apache.org/viewvc/cocoon/branches/BRANCH_2_1_X/src/blocks/databases/java/org/apache/cocoon/transformation/SQLTransformer.java?rev=413885&r1=413884&r2=413885&view=diff
==============================================================================
--- cocoon/branches/BRANCH_2_1_X/src/blocks/databases/java/org/apache/cocoon/transformation/SQLTransformer.java (original)
+++ cocoon/branches/BRANCH_2_1_X/src/blocks/databases/java/org/apache/cocoon/transformation/SQLTransformer.java Tue Jun 13 05:25:55 2006
@@ -1146,6 +1146,8 @@
 
             this.outUri = this.params.getParameter(SQLTransformer.MAGIC_NS_URI_ELEMENT, SQLTransformer.this.namespaceURI);
             this.outPrefix = this.params.getParameter(SQLTransformer.MAGIC_NS_PREFIX_ELEMENT, "sql");
+            this.rowsetElement = this.params.getParameter(SQLTransformer.MAGIC_DOC_ELEMENT, "rowset");
+            this.rowElement = this.params.getParameter(SQLTransformer.MAGIC_ROW_ELEMENT, "row");
 
             this.showNrOfRows = parameters.getParameterAsBoolean(SQLTransformer.MAGIC_NR_OF_ROWS, false);
             this.clobEncoding = parameters.getParameter(SQLTransformer.CLOB_ENCODING, "");
@@ -1217,8 +1219,6 @@
          * Execute the query. Connection must be set already.
          */
         private void execute() throws SQLException {
-            this.rowsetElement = params.getParameter(SQLTransformer.MAGIC_DOC_ELEMENT, "rowset");
-            this.rowElement = params.getParameter(SQLTransformer.MAGIC_ROW_ELEMENT, "row");
             setColumnCase(params.getParameter(SQLTransformer.MAGIC_COLUMN_CASE, "lowercase"));
 
             // Construct query string
@@ -1333,12 +1333,22 @@
                 return true;
             }
 
-            if (rs == null || !rs.next()) {
-                // No more rows.
-                return false;
+            if (rs != null && rs.next()) {
+                // Have next row
+                return true;
+            }
+
+            while (pst.getMoreResults()) {
+                rs = pst.getResultSet();
+                md = rs.getMetaData();
+                if (rs.next()) {
+                    // Have next row in next result set
+                    return true;
+                }
             }
 
-            return true;
+            // Nothing left
+            return false;
         }
 
         /**

Modified: cocoon/branches/BRANCH_2_1_X/status.xml
URL: http://svn.apache.org/viewvc/cocoon/branches/BRANCH_2_1_X/status.xml?rev=413885&r1=413884&r2=413885&view=diff
==============================================================================
--- cocoon/branches/BRANCH_2_1_X/status.xml (original)
+++ cocoon/branches/BRANCH_2_1_X/status.xml Tue Jun 13 05:25:55 2006
@@ -182,6 +182,12 @@
   <release version="@version@" date="@date@">
 -->
   <release version="2.1.10" date="TBD">
+    <action dev="VG" type="fix" fixes-bug="COCOON-1247">
+      Databases: Support multiple results in SQLTransformer.
+    </action>
+    <action dev="VG" type="fix" fixes-bug="COCOON-1552">
+      Databases: Fix NPE in SQLTransformer in error handling code.
+    </action>
     <action dev="VG" type="update">
       Databases: Support CLOBs in SQLTransformer when returned as stored procedure
       parameters, or as columns in a cursor returned by stored procedure.