Details
Description
I was experimenting DbUtils and discovered that if the result set contains a SQLXML column using the BeanProcessor the returned type will be a String and not a java.sql.SQLXML.
Part of the problem is related with the fact the SQL Server driver returns a String.
The call to ResultSet.getObject([SQLXML index]) is returning a String instead of the java.sql.SQLXML, but if we call the ResultSet.getSQLXML([SQLXML index]) it works as expected.
The correction I've made on the DbUtils was to add the following code:
BeanProcess.java
protected Object processColumn(ResultSet rs, int index, Class<?> propType) throws SQLException { (...) } else if (propType.equals(SQLXML.class)) { return rs.getSQLXML(index); } else { return rs.getObject(index); }