Adding constructors to ResultImpl to work around the SQLException hiding in ResultSupport - and noted this in ResultSupport as per #46086
diff --git a/src/javax/servlet/jsp/jstl/sql/ResultSupport.java b/src/javax/servlet/jsp/jstl/sql/ResultSupport.java
index d0bbcdb..6522af4 100644
--- a/src/javax/servlet/jsp/jstl/sql/ResultSupport.java
+++ b/src/javax/servlet/jsp/jstl/sql/ResultSupport.java
@@ -26,8 +26,11 @@
* easier for page authors to access and manipulate the data resulting
* from a SQL query.</p>
*
- * @author Justyna Horwat
+ * Note that these methods hide any SQLExceptions that are caused and return
+ * null - to work around that
+ * use org.apache.taglibs.standard.tag.common.sql.ResultImpl directly.
*
+ * @author Justyna Horwat
*/
public class ResultSupport {
diff --git a/src/org/apache/taglibs/standard/tag/common/sql/ResultImpl.java b/src/org/apache/taglibs/standard/tag/common/sql/ResultImpl.java
index 7a84d4c..9307803 100644
--- a/src/org/apache/taglibs/standard/tag/common/sql/ResultImpl.java
+++ b/src/org/apache/taglibs/standard/tag/common/sql/ResultImpl.java
@@ -47,6 +47,29 @@
private boolean isLimited;
/**
+ * Build a <code>Result</code> object from a <code>ResultSet</code> object.
+ *
+ * @param rs an open <tt>ResultSet</tt>, positioned before the first row
+ * @exception if a database error occurs
+ */
+ public ResultImpl(ResultSet rs) throws SQLException {
+ this(rs, -1, -1);
+ }
+
+ /**
+ * Build a <code>Result</code> object from a <code>ResultSet</code> object.
+ *
+ * @param rs an open <tt>ResultSet</tt>, positioned before the first row
+ * @param maxRows, query maximum rows limit
+ * @exception if a database error occurs
+ */
+ public ResultImpl(ResultSet rs, int maxRows) throws SQLException {
+ // Matching API in ResultSupport - apologies for the bad
+ // order of default parameters
+ this(rs, -1, maxRows);
+ }
+
+ /**
* This constructor reads the ResultSet and saves a cached
* copy.
*