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);

Reply via email to