使用Vaadin SQL容器保存DateField(具有空值)时出错

时间:2013-10-17 15:43:27

标签: java date vaadin

我使用Vaadin SQLContainer将一些字段绑定到表格。其中一个是以这种方式绑定的PopupDateField字段:

FieldGroupVar.bind(field, "dateOfBorn");

但是某些日期值可能具有NULL,因此当应用程序尝试检索或存储表中的值时,将抛出空指针异常。

例如,当做> FieldGroupVar.commit();

如何告诉SQLContainer省略此错误并存储或检索其余值?

2 个答案:

答案 0 :(得分:0)

我认为你需要设置nullRepresentation field.setNullRepresetnation(new Date());

我希望这可以提供帮助。

答案 1 :(得分:0)

在这种情况下,我在insert语句中使用三元运算符。 它检查Date字段是否为null,如果是,则插入当前日期:

String sql = "INSERT INTO MYTABLE (MYDATE) VALUES('+
(rs.getTimestamp("MYDATE") != null ? rs.getTimestamp("MYDATE") : new Date())
+"')";