It sounds to me like the table thinks it is displaying
String or Object data so it uses the default renderer.
A table chooses the appropriate renderer based on the value returned from the getColumnClass() method. Or you can set the renderer to be used in the TableColumn itself.