Evidentemente perché l'Object che ti viene restituito in realtà non è un Integer ma è uno String.

Controlla che il valore restituito sia una stringa in questo modo :

String a;
Object x = table.getValueAt(i,j);
if ( x instanceof String)
a=(String) x;

In questo modo puoi essere sicuro di fare un cast corretto.