This week's book giveaway is in the OCAJP 8 forum. We're giving away four copies of OCA Java SE 8 Programmer I Study Guide and have Edward Finegan & Robert Liguori on-line! See this thread for details.
You should also override setValueAt so that the return value of getValueAt for that cell will return false. In other words, if before Variable a != Y for that row, then you should change your model's data such that Variable a == Y afterwards. Otherwise the model will still return Boolean.FALSE for that cell and the check box will remain unchecked.