Attached is the fix for bug 171917 .

The populate() method needs to check for a size of 0 for the map in case a 
webrowset xml file has an empty map tag,  which would result in calling 
setobject specifying a map and not all databases/drivers support this.

simple 1 line change:

hg diff CachedRowSetImpl.java 
diff -r 4580652d9828 src/share/classes/com/sun/rowset/CachedRowSetImpl.java
--- a/src/share/classes/com/sun/rowset/CachedRowSetImpl.java    Fri May 04 
16:00:47 2012 -0400
+++ b/src/share/classes/com/sun/rowset/CachedRowSetImpl.java    Fri May 25 
15:45:29 2012 -0400
@@ -659,7 +659,7 @@
                  * us work with drivers that do not support
                  * getObject with a map in fairly sensible way
                  */
-                if (map == null) {
+                if (map == null || map.size() == 0) {
                     obj = data.getObject(i);
                 } else {
                     obj = data.getObject(i, map);


Best
Lance

Lance Andersen| Principal Member of Technical Staff | +1.781.442.2037
Oracle Java Engineering 
1 Network Drive 
Burlington, MA 01803
lance.ander...@oracle.com

Reply via email to