public java.net.URL getURL(int columnIndex) throws SQLException {
        //throw new SQLException("Operation not supported");

        java.net.URL value;

        // sanity check.
        checkIndex(columnIndex);
        // make sure the cursor is on a valid row
        checkCursor();

        if (RowSetMD.getColumnType(columnIndex) != Types.DATALINK) {
            throw new SQLException(resBundle.handleGetObject("cachedrowsetimpl.dtypemismt").toString());
        }

        setLastValueNull(false);
        value = (java.net.URL)(getCurrentRow().getColumnObject(columnIndex));

        // check for SQL NULL
        if (value == null) {
            setLastValueNull(true);
            return null;
        }

        return value;
    }
Retrieves the value of the designated column in this
<code>CachedRowSetImpl</code> object as a <code>java.net.URL</code> object
in the Java programming language.

@return a java.net.URL object containing the resource reference described by
the URL
@throws SQLException if (1) the given column index is out of bounds,
(2) the cursor is not on one of this rowset's rows or its
insert row, or (3) the designated column does not store an
SQL <code>DATALINK</code> value.
@see #getURL(String)
src/main/java/org/replicadb/rowset/sun/rowset/CachedRowSetImpl.java