public Clob getClob(int columnIndex) throws SQLException {
      Clob value;

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

      if (RowSetMD.getColumnType(columnIndex) != java.sql.Types.CLOB) {
         System.out.println(MessageFormat.format(resBundle.handleGetObject("cachedrowsetimpl.type").toString(), RowSetMD.getColumnType(columnIndex)));
         throw new SQLException(resBundle.handleGetObject("cachedrowsetimpl.dtypemismt").toString());
      }

      setLastValueNull(false);
      value = (Clob)(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>StreamingRowSetImpl</code> object as a <code>Clob</code> object
in the Java programming language.

@param columnIndex the first column is <code>1</code>, the second
       is <code>2</code>, and so on; must be <code>1</code> or larger
       and equal to or less than the number of columns in this rowset
@return a <code>Clob</code> object representing an SQL <code>CLOB</code> value
@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>CLOB</code> value
@see #getClob(String)
src/main/java/org/replicadb/rowset/StreamingRowSetImpl.java