不能保证在第一次调用该方法时,该
TableCell变量已经与a关联
TableRow或
TableRow已经被填充
updateItem。
在您的情况下,可能会
getTableRow()返回
null(但这意味着
cml = (Cml)cell.getTableRow().getItem();抛出异常的那一行,而不是
String SQLString = "UPDATEIDMAS.CML SET CMLSTATUS = '<NEW_STATUS>' WHERe EQUIPMENT_ID = '" +cml.getEquipmentId() + "' AND CML_NO = " + cml.getCmlNo(););至少在我尝试重现该错误时发生了。
但是如果
String SQLString = "UPDATE IDMAS.CML SET CMLSTATUS = '<NEW_STATUS>' WHERe EQUIPMENT_ID = '" + cml.getEquipmentId() + "' AND CML_NO = " + cml.getCmlNo();
确实是导致错误的行,那么导致这种情况的唯一方法就是if
cmlis
null。
解决此问题的一种方法是根据索引从表中获取项目:
cml = (Cml) cell.getTableView().getItems().get(getIndex());



