title: Update a JTable with setValueAt
body: <p>I have a JTable that is created from an AbstractTableModel. I am successfully initialising the table on the screen. (it is an informational table only - clicks are disabled) When i call setValueAt from the JTable object nothing happens.</p>
  
  <p>Any help is much appreciated!
  Thanks in advance.</p>
  
  <pre><code>public void initialiseAuxDataStructure(TableModel table) {
      JTable auxDS = new JTable(table);
      Font f = auxDS.getFont();
      auxDS.setFont(new Font(f.getFontName(), f.getStyle(), f.getSize()+2));
      auxDS.setFocusable(false);
      auxDS.setRowSelectionAllowed(false);
  
      JTableHeader header = auxDS.getTableHeader();
      f = header.getFont();
      header.setFont(new Font(f.getFontName(), Font.BOLD, f.getSize()+2));
  
      pnlCenter.add(new JScrollPane(auxDS), BorderLayout.CENTER);
      pnlCenter.revalidate();
  
  }
  
  public void updateTable(String value, int row, int col) {
      auxDS.setValueAt(value, row, col);
      auxDS.revalidate();
  }
  </code></pre>
  
  <p>and the abstract table model is:</p>
  
  <p>public class TableModel extends AbstractTableModel {</p>
  
  <pre><code>private String[] columnNames;
  private Object[][] data;
  
  public TableModel(String[] columnNames, int columns) {
      this.columnNames = columnNames;
      data = new Object[columns][columnNames.length];
      for (int i=0; i&lt;columns;i++) {
          data[i][0] = i;
      }
  }
  
  public TableModel(String[] colNames, Object[][] startData){
      this.columnNames = colNames;
      this.data = startData;
  }
  
  public int getColumnCount() {
      return columnNames.length;
  }
  
  public int getRowCount() {
      return data.length;
  }
  
  public String getColumnName(int col) {
      return columnNames[col];
  }
  
  public Object getValueAt(int row, int col) {
      return data[row][col];
  }
  </code></pre>
  
  <p>}</p>