Обе JTables использовали средство визуализации ячеек, которое подклассифицировало DefaultTableCellRenderer и переопределяло метод getTableCellRendererComponent. Переопределенный метод getTableCellRendererComponent для JTable, который показал индикатор фокуса, называется методом super.getTableCellRendererComponent, но переопределенный метод getTableCellRendererComponent для JTable, который не показывает индикаторы фокуса, НЕ вызывал метод super *getTableCellRen.
JTable с индикатором фокуса:
public Component getTableCellRendererComponent(JTable table, Object value,
boolean isSelected, boolean hasFocus, int row, int col) {
Component comp = super.getTableCellRendererComponent(table, value,
isSelected, hasFocus, row, col);
....
JTable без индикатора фокуса:
public Component getTableCellRendererComponent(JTable table, Object value,
boolean isSelected,
boolean hasFocus, int row,
int col) {
for (int i = 0; i < ids.length; i++) {
....