diff --git a/src/share/classes/javax/sql/rowset/serial/SQLInputImpl.java b/src/share/classes/javax/sql/rowset/serial/SQLInputImpl.java index 95a9938a007d0f0d73dd46c323fe167fed3bf5a3..27a7d20034115904f215bfc1ad9a3d5677ee2c4e 100644 --- a/src/share/classes/javax/sql/rowset/serial/SQLInputImpl.java +++ b/src/share/classes/javax/sql/rowset/serial/SQLInputImpl.java @@ -27,6 +27,7 @@ package javax.sql.rowset.serial; import java.sql.*; import java.util.Arrays; import java.util.Map; +import sun.reflect.misc.ReflectUtil; /** * An input stream used for custom mapping user-defined types (UDTs). @@ -476,13 +477,9 @@ public class SQLInputImpl implements SQLInput { // create new instance of the class SQLData obj = null; try { - obj = (SQLData)c.newInstance(); - } catch (java.lang.InstantiationException ex) { - throw new SQLException("Unable to instantiate: " + - ex.getMessage()); - } catch (java.lang.IllegalAccessException ex) { - throw new SQLException("Unable to instantiate: " + - ex.getMessage()); + obj = (SQLData)ReflectUtil.newInstance(c); + } catch (Exception ex) { + throw new SQLException("Unable to Instantiate: ", ex); } // get the attributes from the struct Object attribs[] = s.getAttributes(map);