This is an automated email from the ASF dual-hosted git repository. kaspersor pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/metamodel.git
commit 6ee457836cbfa88b018fb1faaf0cadb4d0994c99 Author: 李小保 <[email protected]> AuthorDate: Wed Jan 23 15:33:13 2019 +0800 the result of column.getNativeType() may be null --- .../jdbc/dialects/PostgresqlQueryRewriter.java | 26 ++++++++++++---------- 1 file changed, 14 insertions(+), 12 deletions(-) diff --git a/jdbc/src/main/java/org/apache/metamodel/jdbc/dialects/PostgresqlQueryRewriter.java b/jdbc/src/main/java/org/apache/metamodel/jdbc/dialects/PostgresqlQueryRewriter.java index 7fe03cb..9289702 100644 --- a/jdbc/src/main/java/org/apache/metamodel/jdbc/dialects/PostgresqlQueryRewriter.java +++ b/jdbc/src/main/java/org/apache/metamodel/jdbc/dialects/PostgresqlQueryRewriter.java @@ -106,18 +106,20 @@ public class PostgresqlQueryRewriter extends LimitOffsetQueryRewriter { @Override public Object getResultSetValue(ResultSet resultSet, int columnIndex, Column column) throws SQLException { - switch (column.getNativeType()) { - case "json": - case "jsonb": - assert column.getType() == ColumnType.MAP; - final String stringValue = resultSet.getString(columnIndex); - if (stringValue == null) { - return null; - } - try { - return jsonObjectMapper.readValue(stringValue, Map.class); - } catch (Exception e) { - throw new IllegalArgumentException("Unable to read string as JSON: " + stringValue); + if (column.getNativeType() != null) { + switch (column.getNativeType()) { + case "json": + case "jsonb": + assert column.getType() == ColumnType.MAP; + final String stringValue = resultSet.getString(columnIndex); + if (stringValue == null) { + return null; + } + try { + return jsonObjectMapper.readValue(stringValue, Map.class); + } catch (Exception e) { + throw new IllegalArgumentException("Unable to read string as JSON: " + stringValue); + } } } return super.getResultSetValue(resultSet, columnIndex, column);
