diff --git a/johnzon-jsonb/src/main/java/org/apache/johnzon/jsonb/JsonbAccessMode.java b/johnzon-jsonb/src/main/java/org/apache/johnzon/jsonb/JsonbAccessMode.java
index 7f6ddaa..4d19dff 100644
--- a/johnzon-jsonb/src/main/java/org/apache/johnzon/jsonb/JsonbAccessMode.java
+++ b/johnzon-jsonb/src/main/java/org/apache/johnzon/jsonb/JsonbAccessMode.java
@@ -1038,17 +1038,17 @@
     }
 
     private boolean hasRawType(final Type type) {
-        return Class.class.isInstance(type) || ParameterizedType.class.isInstance(type);
+        return Class.class.isInstance(type) ||
+            (ParameterizedType.class.isInstance(type) &&
+                    Class.class.isInstance(ParameterizedType.class.cast(type).getRawType()));
     }
 
-    private Class<?> getRawType(final Type type) {
-        if (!Class.class.isInstance(type) && !ParameterizedType.class.isInstance(type)) {
-            throw new IllegalStateException("Unsupported generic type " + type.getClass().getName());
-        } else if (Class.class.isInstance(type)) {
+    private Class<?> getRawType(final Type type) { // only intended to be used after hasRawType check
+        if (Class.class.isInstance(type)) {
             return Class.class.cast(type);
-        } else /*if (ParameterizedType.class.isInstance(type))*/ {
-            return Class.class.cast(ParameterizedType.class.cast(type).getRawType());
         }
+        // ParameterizedType + Class raw type
+        return Class.class.cast(ParameterizedType.class.cast(type).getRawType());
     }
 
     private static class ClassDecoratedType implements DecoratedType {
