我尝试使用java big query api在BigQuery表上设置值,但每次发送空值时都会抛出NullPointerException(java.lang.NullPointerException: null value in entry: popup=null
)。
null值应该完全可以接受,因为我的模式在模式本身是NULLABLE。我有很多其他字段,它们具有空值。
关于这个问题的任何建议对我来说都很有帮助,因为这个原因我没有被困在哪里。
注意:我可能会忽略并且不设置那些具有空值的字段,但这不是我要寻找的解决方案。我的代码如下:
TableRow row = new TableRow();
row.set("ip", "test");
row.set("popup", null);
答案 0 :(得分:4)
不要将值显式设置为null
。完全忽略它。如果BigQuery的有效负载中没有它,它将被设置为null
。无论如何,您将无法将其设置为null
,因为API正在检查null
参数,并且您无法更改该行为。
所以,请改为:
TableRow row = new TableRow();
row.set("ip", "test");