Но проблема в том, что JTableHeader недоступен
Заголовок таблицы является отдельным компонентом и создается только при добавлении таблицы в JScrollPane.
Итак вместо использования кода, такого как:
panel.add( table );
Лог c должен быть:
panel.add( new JScrollPane( table ) );
Теперь заголовок таблицы может отображаться на панели прокрутки.