* @param column the column whose value is to be changed
     * @throws IndexOutOfBoundsException if an invalid row or
     *                                   column was given
     */
    @Override
    public void setValueAt(Object value, int row, int column) {
        ColumnInformation ci = (ColumnInformation) columns.get(column);

        try {
            Method setMethod = ci.getSetter();

            if (setMethod != null) {
                setMethod.invoke(getRow(row), value);
                fireTableCellUpdated(row, column);
            }
        } catch (IllegalAccessException e) {
        } catch (InvocationTargetException e) {
        }
    }