Connection conn = DriverManager.getConnection(URL);
PreparedStatement statement = conn.prepareStatement("SELECT CAST(NULL AS DATE)");
ResultSet results = statement.executeQuery();
while (results.next()) {
ResultSetMetaData resultSetMetaData = results.getMetaData();
logger.log(resultSetMetaData.getColumnLabel(1) + ": " + results.getObject(1));
logger.log(resultSetMetaData.getColumnLabel(1) + ": " + results.getDate(1, Calendar.getInstance()));
}
results in
CAST(NULL AS DATE): null
Exception in thread "main" java.lang.NullPointerException
at org.elasticsearch.xpack.sql.jdbc.JdbcResultSet.dateTimeAsMillis(JdbcResultSet.java:276)
at org.elasticsearch.xpack.sql.jdbc.JdbcResultSet.getDate(JdbcResultSet.java:360)
For SELECT CAST(NULL AS DATETIME) the query is successful.
For SELECT CAST(NULL AS TIME) the query fails again with NPE.