Google bigquery BigQuery Java API-无法为TableRow值发送Null

Google bigquery BigQuery Java API-无法为TableRow值发送Null,google-bigquery,Google Bigquery,我试图使用java big query api在BigQuery表上设置值,但每次我发送空值时,它都会抛出NullPointerException(java.lang.NullPointerException:entry:popup=null) 空值应该是完全可以接受的,因为模式本身可以为空。我有一堆其他字段,上面有空值 关于这个问题的任何建议都会对我很有帮助,因为这个问题,我被困在任何地方 注意:我可能会忽略这些字段,也不会设置这些字段的空值,但这不是我要寻找的解决方案。我的代码如下: Tab

我试图使用java big query api在BigQuery表上设置值,但每次我发送空值时,它都会抛出NullPointerException(
java.lang.NullPointerException:entry:popup=null

空值应该是完全可以接受的,因为模式本身可以为空。我有一堆其他字段,上面有空值

关于这个问题的任何建议都会对我很有帮助,因为这个问题,我被困在任何地方

注意:我可能会忽略这些字段,也不会设置这些字段的空值,但这不是我要寻找的解决方案。我的代码如下:

TableRow row = new TableRow();
                row.set("ip", "test");
                row.set("popup", null);

不要显式地将该值设置为
null
。简单地忽略它。如果它不在BigQuery的有效负载中,它将被设置为
null
。无论如何,您都无法将其设置为
null
,因为API正在检查
null
参数,您无法更改该行为

因此,请改为:

TableRow row = new TableRow();
row.set("ip", "test");

不要显式地将该值设置为
null
。简单地忽略它。如果它不在BigQuery的有效负载中,它将被设置为
null
。无论如何,您都无法将其设置为
null
,因为API正在检查
null
参数,您无法更改该行为

因此,请改为:

TableRow row = new TableRow();
row.set("ip", "test");