2014-11-12 1 views
0

Я обращаюсь к bigquery с помощью Java, чтобы проверить, существует ли таблица в наборе данных. После прошлой пятницы (11/7) мой код Java иногда возвращает значение null и вызывается исключение nullPointerException. Например,bigquery.tables(). List() возвращает null по JAVA

Bigquery bigquery = new Bigquery.Builder(HTTP_TRANSPORT, JSON_FACTORY, credential) 
      .setApplicationName("BigQuery-Service-Accounts/0.1") 
      .setHttpRequestInitializer(credential).build(); 

if(bigquery.tables().list(projectId, datasetId).execute().getTables() != null) { 
    // do something 
} 

Список() метод будет возвращать нуль и бросить java.lang.NullPointerException. Эта ситуация не всегда случается, иногда это будет хорошо при повторном запуске кода, но иногда этого не происходит. Моя версия API - это BigQuery API v2 (Rev. 168) 1.19.0. Может ли кто-нибудь помочь объяснить, что происходит? Благодарю.

ответ

1

Возможно, вы захотите запустить bigquery.tables().list(projectId, datasetId).execute() на своей собственной линии, а затем поймать ошибку, если таковая имеется.

Тогда, конечно, вы бежите следующим getTables(). Возможно, вам захочется найти и найти другие сообщения, например проблемы с учетными данными, проблему с поддержкой SSL. Полная справка запроса поможет вам.

Смежные вопросы