Your action listener creates a new table model, and replaces the model of the JTable by this new table model. So the TableModelListener you added before still listens to the old table model, which isn't used anymore.
Don't replace the table model, but change its content instead. Or replace the table model, but add the TableModelListener to the new one.