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:32:10 UTC

svn commit: r413888 - in /cocoon/trunk/blocks/cocoon-databases: cocoon-databases-impl/src/main/java/org/apache/cocoon/transformation/SQLTransformer.java status.xml

Author: vgritsenko
Date: Tue Jun 13 05:32:09 2006
New Revision: 413888

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

Modified:
    cocoon/trunk/blocks/cocoon-databases/cocoon-databases-impl/src/main/java/org/apache/cocoon/transformation/SQLTransformer.java
    cocoon/trunk/blocks/cocoon-databases/status.xml

Modified: cocoon/trunk/blocks/cocoon-databases/cocoon-databases-impl/src/main/java/org/apache/cocoon/transformation/SQLTransformer.java
URL: http://svn.apache.org/viewvc/cocoon/trunk/blocks/cocoon-databases/cocoon-databases-impl/src/main/java/org/apache/cocoon/transformation/SQLTransformer.java?rev=413888&r1=413887&r2=413888&view=diff
==============================================================================
--- cocoon/trunk/blocks/cocoon-databases/cocoon-databases-impl/src/main/java/org/apache/cocoon/transformation/SQLTransformer.java (original)
+++ cocoon/trunk/blocks/cocoon-databases/cocoon-databases-impl/src/main/java/org/apache/cocoon/transformation/SQLTransformer.java Tue Jun 13 05:32:09 2006
@@ -1118,6 +1118,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, "");
@@ -1189,8 +1191,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
@@ -1305,12 +1305,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/trunk/blocks/cocoon-databases/status.xml
URL: http://svn.apache.org/viewvc/cocoon/trunk/blocks/cocoon-databases/status.xml?rev=413888&r1=413887&r2=413888&view=diff
==============================================================================
--- cocoon/trunk/blocks/cocoon-databases/status.xml (original)
+++ cocoon/trunk/blocks/cocoon-databases/status.xml Tue Jun 13 05:32:09 2006
@@ -65,6 +65,12 @@
  <!-- The following list contains the changes since the latest 2.1.x version. -->
  <changes>
   <release version="@version@" date="@date@">
+   <action dev="VG" type="fix" fixes-bug="COCOON-1247">
+     Support multiple results in SQLTransformer.
+   </action>
+   <action dev="VG" type="fix" fixes-bug="COCOON-1552">
+     Fix NPE in SQLTransformer in error handling code.
+   </action>
    <action dev="VG" type="update">
     Support CLOBs in SQLTransformer when returned as stored procedure
     parameters, or as columns in a cursor returned by stored procedure.