Skip to content

Commit 787479a

Browse files
committed
Fix proxy serialization errors
1 parent d47c6e1 commit 787479a

File tree

2 files changed

+6
-3
lines changed

2 files changed

+6
-3
lines changed

substratevm/src/com.oracle.svm.core/src/com/oracle/svm/core/reflect/proxy/DynamicProxySupport.java

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -156,7 +156,6 @@ private static Object createProxyClass(Class<?>[] interfaces) {
156156
}
157157
return clazz;
158158
} catch (Throwable t) {
159-
LogUtils.warning("Could not create a proxy class from list of interfaces: %s. Reason: %s", Arrays.toString(interfaces), t.getMessage());
160159
return t;
161160
}
162161
}

substratevm/src/com.oracle.svm.hosted/src/com/oracle/svm/hosted/reflect/serialize/SerializationFeature.java

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -385,8 +385,12 @@ public void registerLambdaCapturingClass(ConfigurationCondition condition, Strin
385385
public void registerProxyClass(ConfigurationCondition condition, List<String> implementedInterfaces) {
386386
abortIfSealed();
387387
registerConditionalConfiguration(condition, (cnd) -> {
388-
Class<?> proxyClass = proxyRegistry.createProxyClassForSerialization(implementedInterfaces);
389-
register(cnd, proxyClass);
388+
try {
389+
Class<?> proxyClass = proxyRegistry.createProxyClassForSerialization(implementedInterfaces);
390+
register(cnd, proxyClass);
391+
} catch (IllegalArgumentException t) {
392+
/* ignore: can't serialize class that can't be instantiated */
393+
}
390394
});
391395
}
392396

0 commit comments

Comments
 (0)