Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[native-image] UnsupportedFeatureError: ObjectOutputStream.writeObject() #460

Closed
cushon opened this issue Jun 9, 2018 · 25 comments · Fixed by #2730
Closed

[native-image] UnsupportedFeatureError: ObjectOutputStream.writeObject() #460

cushon opened this issue Jun 9, 2018 · 25 comments · Fixed by #2730
Assignees
Milestone

Comments

@cushon
Copy link

cushon commented Jun 9, 2018

I ran into this stack trace using native-image on an application that uses Java serialization:

com.oracle.svm.core.jdk.UnsupportedFeatureError: ObjectOutputStream.writeObject()
	at java.lang.Throwable.<init>(Throwable.java:265)
	at java.lang.Error.<init>(Error.java:70)
	at com.oracle.svm.core.jdk.UnsupportedFeatureError.<init>(UnsupportedFeatureError.java:29)
	at com.oracle.svm.core.jdk.Target_com_oracle_svm_core_util_VMError.unsupportedFeature(VMErrorSubstitutions.java:98)
	at com.oracle.svm.core.jdk.Target_java_io_ObjectOutputStream.writeObject(JavaIOSubstitutions.java:67)

I didn't see a discussion of serialization in LIMITATIONS.md. Is this something you plan to support and haven't gotten to yet, or is serialization not supported?

@cstancu
Copy link
Member

cstancu commented Jun 12, 2018

It is not currently supported because we haven't gotten around to do it yet.

@belaban
Copy link

belaban commented Mar 22, 2019

Does 'closed' mean this issue has been rejected, or is it still on the todo list? The use case I have is that I have to send exceptions or user-defined data types across the wire, and these need to be serialized.
I can handle primitive or well-defined data types (e.g. java.lang.Integer), but fall back to Java serialization for the above mentioned types.

@dili91
Copy link

dili91 commented Apr 17, 2019

I encountered a similar issue when using the following method of java.security.KeyStore class

public final void load(InputStream stream, char[] password)
        throws IOException, NoSuchAlgorithmException, CertificateException

and this is the stack trace

Exception in thread "main" com.oracle.svm.core.jdk.UnsupportedFeatureError: ObjectInputStream.readObject()
        at com.oracle.svm.core.util.VMError.unsupportedFeature(VMError.java:102)
        at java.io.ObjectInputStream.readObject(ObjectInputStream.java:54)
        at com.sun.crypto.provider.JceKeyStore.engineLoad(JceKeyStore.java:850)
        at java.security.KeyStore.load(KeyStore.java:1445)
        at CryptoSample.loadSecretKey(CryptoSample.java:78)
        at CryptoSample.main(CryptoSample.java:103)

@ludoch
Copy link

ludoch commented Apr 18, 2019

Same error with some Google App Engine apps.... If only time would block the fix, I recommend reopening this bug...

@razem-io
Copy link

razem-io commented Apr 19, 2019

Guys, he only closed another issue which was a duplicate (#519) and referenced it. It had a similar name, which might have caused the confusion. This issue (#416) is still open.

@melix
Copy link
Member

melix commented May 15, 2019

We also have the problem with Gradle: the daemon may send messages to the client in serialized form (in particular exceptions). When the client gets the message, it fails with:

Caused by: com.oracle.svm.core.jdk.UnsupportedFeatureError: ObjectInputStream.readObject()
        at com.oracle.svm.core.util.VMError.unsupportedFeature(VMError.java:102)
        at java.io.ObjectInputStream.readObject(ObjectInputStream.java:54)
        at org.gradle.internal.serialize.Message.receive(Message.java:55)
        at org.gradle.internal.serialize.BaseSerializerFactory$ThrowableSerializer.read(BaseSerializerFactory.java:244)
        at org.gradle.internal.serialize.BaseSerializerFactory$ThrowableSerializer.read(BaseSerializerFactory.java:238)
        at org.gradle.internal.logging.serializer.LogEventSerializer.read(LogEventSerializer.java:56)
        at org.gradle.internal.logging.serializer.LogEventSerializer.read(LogEventSerializer.java:26)

@luisnuxx
Copy link

I'm also facing the same problem trying to use apache httpclient:

Caused by: com.oracle.svm.core.jdk.UnsupportedFeatureError: ObjectOutputStream.writeObject()
	at com.oracle.svm.core.util.VMError.unsupportedFeature(VMError.java:102)
	at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:69)
	at org.apache.http.impl.client.BasicAuthCache.put(BasicAuthCache.java:107)
	at org.apache.http.impl.client.AuthenticationStrategyImpl.authSucceeded(AuthenticationStrategyImpl.java:230)
	at org.apache.http.impl.client.TargetAuthenticationStrategy.authSucceeded(TargetAuthenticationStrategy.java:44)
	at org.apache.http.impl.auth.HttpAuthenticator.isAuthenticationRequested(HttpAuthenticator.java:88)
	at org.apache.http.impl.execchain.MainClientExec.needAuthentication(MainClientExec.java:576)
	at org.apache.http.impl.execchain.MainClientExec.execute(MainClientExec.java:293)
	at org.apache.http.impl.execchain.ProtocolExec.execute(ProtocolExec.java:186)
	at org.apache.http.impl.execchain.RetryExec.execute(RetryExec.java:89)
	at org.apache.http.impl.execchain.RedirectExec.execute(RedirectExec.java:110)
	at org.apache.http.impl.client.InternalHttpClient.doExecute(InternalHttpClient.java:185)
	at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:83)
	at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:108)

@luisnuxx
Copy link

luisnuxx commented Jun 19, 2019

And again on a different project.

Caused by: com.oracle.svm.core.jdk.UnsupportedFeatureError: ObjectInputStream.readObject()
	at com.oracle.svm.core.util.VMError.unsupportedFeature(VMError.java:102)
	at java.io.ObjectInputStream.readObject(ObjectInputStream.java:54)

@iustinov
Copy link

I also get this error, when trying to invoke Oracle DB with ojdbc7.

com.oracle.svm.core.jdk.UnsupportedFeatureError: ObjectInputStream.readObject()
        at com.oracle.svm.core.util.VMError.unsupportedFeature(VMError.java:102)
        at java.io.ObjectInputStream.readObject(ObjectInputStream.java:54)
        at oracle.sql.ConverterArchive.readObj(ConverterArchive.java:406)
        at oracle.sql.converter.CharacterConverterJDBC.getInstance(CharacterConverterJDBC.java:142)
        at oracle.jdbc.driver.DynamicByteArray$1.run(DynamicByteArray.java:746)
        at java.security.AccessController.doPrivileged(AccessController.java:63)
        at oracle.jdbc.driver.DynamicByteArray.<clinit>(DynamicByteArray.java:742)
        at com.oracle.svm.core.hub.ClassInitializationInfo.invokeClassInitializer(ClassInitializationInfo.java:347)
        at com.oracle.svm.core.hub.ClassInitializationInfo.initialize(ClassInitializationInfo.java:267)
        at java.lang.Class.ensureInitialized(DynamicHub.java:437)
        at oracle.jdbc.driver.T4CStatement.configureRowData(T4CStatement.java:445)
       at oracle.jdbc.driver.OracleStatement.<init>(OracleStatement.java:724)
        at oracle.jdbc.driver.T4CStatement.<init>(T4CStatement.java:1259)
        at oracle.jdbc.driver.T4CDriverExtension.allocateStatement(T4CDriverExtension.java:50)
        at oracle.jdbc.driver.PhysicalConnection.createStatement(PhysicalConnection.java:1833)
        at oracle.jdbc.driver.PhysicalConnection.createStatement(PhysicalConnection.java:1793)
        at java.lang.reflect.Method.invoke(Method.java:498)
        at org.apache.tomcat.jdbc.pool.ProxyConnection.invoke(ProxyConnection.java:126)
        at org.apache.tomcat.jdbc.pool.JdbcInterceptor.invoke(JdbcInterceptor.java:108)
        at org.apache.tomcat.jdbc.pool.interceptor.AbstractCreateStatementInterceptor.invoke(AbstractCreateStatementInterceptor.java:75)
        at org.apache.tomcat.jdbc.pool.JdbcInterceptor.invoke(JdbcInterceptor.java:108)
        at org.apache.tomcat.jdbc.pool.DisposableConnectionFacade.invoke(DisposableConnectionFacade.java:81)
        at com.sun.proxy.$Proxy239.createStatement(Unknown Source)

Can Graal work with ojdbc7 (v 12.1.0.2)?

@ziyilin
Copy link
Contributor

ziyilin commented Aug 26, 2019

Any updates on this issue? Seems still not supported in 19.2.
What's the root cause of this issue?

@guanchao-yang
Copy link

com.oracle.svm.core.jdk.UnsupportedFeatureError: ObjectOutputStream.writeObject()
    at com.oracle.svm.core.util.VMError.unsupportedFeature(VMError.java:102)
    at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:69)
    at 

@cstancu GraalVM 19.2.0 have the same problem, can we have any workaround?

@emmanuelbernard
Copy link

Any timeline the team has in mind? In our case it's the Quartz cluster support that can't go in.

cdd-aix pushed a commit to cdd-aix/swarm-client-native that referenced this issue Nov 3, 2019
Fails at
timeout 15 ./swarm-client -master http://192.168.2.45:32779/ -tunnel 192.168.2.45:32778 -username admin -password admin -retry 0 || [ $? -eq 124 ]
Nov 03, 2019 4:40:56 PM hudson.plugins.swarm.Client logArguments
INFO: Client invoked with: -master http://192.168.2.45:32779/ -password ***** -retry 0 -tunnel 192.168.2.45:32778 -username *****
Nov 03, 2019 4:40:56 PM hudson.plugins.swarm.Client run
INFO: Discovering Jenkins master
Exception in thread "main" com.oracle.svm.core.jdk.UnsupportedFeatureError: ObjectOutputStream.writeObject()
	at com.oracle.svm.core.util.VMError.unsupportedFeature(VMError.java:102)
	at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:69)
	at shaded.org.apache.http.impl.client.BasicAuthCache.put(BasicAuthCache.java:107)
	at hudson.plugins.swarm.SwarmClient.createHttpClientContext(SwarmClient.java:369)
	at hudson.plugins.swarm.SwarmClient.discoverFromMasterUrl(SwarmClient.java:232)
	at hudson.plugins.swarm.Client.run(Client.java:130)
	at hudson.plugins.swarm.Client.main(Client.java:104)
Makefile:2: recipe for target 'test' failed
make: *** [test] Error 1

Due to oracle/graal#460
cdd-aix added a commit to cdd-aix/swarm-client-native that referenced this issue Nov 3, 2019
Fails at
timeout 15 ./swarm-client -master http://192.168.2.45:32779/ -tunnel 192.168.2.45:32778 -username admin -password admin -retry 0 || [ $? -eq 124 ]
Nov 03, 2019 4:40:56 PM hudson.plugins.swarm.Client logArguments
INFO: Client invoked with: -master http://192.168.2.45:32779/ -password ***** -retry 0 -tunnel 192.168.2.45:32778 -username *****
Nov 03, 2019 4:40:56 PM hudson.plugins.swarm.Client run
INFO: Discovering Jenkins master
Exception in thread "main" com.oracle.svm.core.jdk.UnsupportedFeatureError: ObjectOutputStream.writeObject()
	at com.oracle.svm.core.util.VMError.unsupportedFeature(VMError.java:102)
	at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:69)
	at shaded.org.apache.http.impl.client.BasicAuthCache.put(BasicAuthCache.java:107)
	at hudson.plugins.swarm.SwarmClient.createHttpClientContext(SwarmClient.java:369)
	at hudson.plugins.swarm.SwarmClient.discoverFromMasterUrl(SwarmClient.java:232)
	at hudson.plugins.swarm.Client.run(Client.java:130)
	at hudson.plugins.swarm.Client.main(Client.java:104)
Makefile:2: recipe for target 'test' failed
make: *** [test] Error 1

Due to oracle/graal#460
cdd-aix pushed a commit to cdd-aix/swarm-client-native that referenced this issue Nov 3, 2019
Fails at
timeout 15 ./swarm-client -master http://192.168.2.45:32779/ -tunnel 192.168.2.45:32778 -username admin -password admin -retry 0 || [ $? -eq 124 ]
Nov 03, 2019 4:40:56 PM hudson.plugins.swarm.Client logArguments
INFO: Client invoked with: -master http://192.168.2.45:32779/ -password ***** -retry 0 -tunnel 192.168.2.45:32778 -username *****
Nov 03, 2019 4:40:56 PM hudson.plugins.swarm.Client run
INFO: Discovering Jenkins master
Exception in thread "main" com.oracle.svm.core.jdk.UnsupportedFeatureError: ObjectOutputStream.writeObject()
	at com.oracle.svm.core.util.VMError.unsupportedFeature(VMError.java:102)
	at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:69)
	at shaded.org.apache.http.impl.client.BasicAuthCache.put(BasicAuthCache.java:107)
	at hudson.plugins.swarm.SwarmClient.createHttpClientContext(SwarmClient.java:369)
	at hudson.plugins.swarm.SwarmClient.discoverFromMasterUrl(SwarmClient.java:232)
	at hudson.plugins.swarm.Client.run(Client.java:130)
	at hudson.plugins.swarm.Client.main(Client.java:104)
Makefile:2: recipe for target 'test' failed
make: *** [test] Error 1

Due to oracle/graal#460
cdd-aix added a commit to cdd-aix/swarm-client-native that referenced this issue Nov 3, 2019
Fails at
timeout 15 ./swarm-client -master http://192.168.2.45:32779/ -tunnel 192.168.2.45:32778 -username admin -password admin -retry 0 || [ $? -eq 124 ]
Nov 03, 2019 4:40:56 PM hudson.plugins.swarm.Client logArguments
INFO: Client invoked with: -master http://192.168.2.45:32779/ -password ***** -retry 0 -tunnel 192.168.2.45:32778 -username *****
Nov 03, 2019 4:40:56 PM hudson.plugins.swarm.Client run
INFO: Discovering Jenkins master
Exception in thread "main" com.oracle.svm.core.jdk.UnsupportedFeatureError: ObjectOutputStream.writeObject()
	at com.oracle.svm.core.util.VMError.unsupportedFeature(VMError.java:102)
	at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:69)
	at shaded.org.apache.http.impl.client.BasicAuthCache.put(BasicAuthCache.java:107)
	at hudson.plugins.swarm.SwarmClient.createHttpClientContext(SwarmClient.java:369)
	at hudson.plugins.swarm.SwarmClient.discoverFromMasterUrl(SwarmClient.java:232)
	at hudson.plugins.swarm.Client.run(Client.java:130)
	at hudson.plugins.swarm.Client.main(Client.java:104)
Makefile:2: recipe for target 'test' failed
make: *** [test] Error 1

Due to oracle/graal#460
cdd-aix added a commit to cdd-aix/swarm-client-native that referenced this issue Nov 3, 2019
commit ee06f89
Merge: f789252 be35823
Author: Chris Dukes <chris.dukes.aix@gmail.com>
Date:   Sun Nov 3 12:39:50 2019 -0500

    Merge branch 'master' into release/0.0.1

commit f789252
Author: Chris Dukes <chris.dukes.aix@gmail.com>
Date:   Sun Nov 3 11:44:34 2019 -0500

    Add everything to test against a real jenkins

    Fails at
    timeout 15 ./swarm-client -master http://192.168.2.45:32779/ -tunnel 192.168.2.45:32778 -username admin -password admin -retry 0 || [ $? -eq 124 ]
    Nov 03, 2019 4:40:56 PM hudson.plugins.swarm.Client logArguments
    INFO: Client invoked with: -master http://192.168.2.45:32779/ -password ***** -retry 0 -tunnel 192.168.2.45:32778 -username *****
    Nov 03, 2019 4:40:56 PM hudson.plugins.swarm.Client run
    INFO: Discovering Jenkins master
    Exception in thread "main" com.oracle.svm.core.jdk.UnsupportedFeatureError: ObjectOutputStream.writeObject()
    	at com.oracle.svm.core.util.VMError.unsupportedFeature(VMError.java:102)
    	at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:69)
    	at shaded.org.apache.http.impl.client.BasicAuthCache.put(BasicAuthCache.java:107)
    	at hudson.plugins.swarm.SwarmClient.createHttpClientContext(SwarmClient.java:369)
    	at hudson.plugins.swarm.SwarmClient.discoverFromMasterUrl(SwarmClient.java:232)
    	at hudson.plugins.swarm.Client.run(Client.java:130)
    	at hudson.plugins.swarm.Client.main(Client.java:104)
    Makefile:2: recipe for target 'test' failed
    make: *** [test] Error 1

    Due to oracle/graal#460
@javasuns
Copy link

Any update on this?

@aldettinger
Copy link

The h2 MVStore also makes heavy usage or writeObject/readObject.

@ziyilin
Copy link
Contributor

ziyilin commented Apr 28, 2020

I have committed a PR(#2323) to support serialization.

@phamvanthanh
Copy link

I have same problem with Graalvm 20.2

@Yanxinwei
Copy link

Yanxinwei commented Jun 16, 2020

Any solution? Same exception while using Elastic RestHighLevelClient for ES operations.

10:28:59 ERROR [io.qu.ve.ht.ru.QuarkusErrorHandler] (executor-thread-324) HTTP Request to /xxx/xxxx failed, error id: xxxxxxx: org.jboss.resteasy.spi.UnhandledException: com.oracle.svm.core.jdk.UnsupportedFeatureError: ObjectOutputStream.writeObject()
	at org.jboss.resteasy.core.ExceptionHandler.handleApplicationException(ExceptionHandler.java:106)
	at org.jboss.resteasy.core.ExceptionHandler.handleException(ExceptionHandler.java:372)
	at org.jboss.resteasy.core.SynchronousDispatcher.writeException(SynchronousDispatcher.java:216)
	at org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:515)
	at org.jboss.resteasy.core.SynchronousDispatcher.lambda$invoke$4(SynchronousDispatcher.java:259)
	at org.jboss.resteasy.core.SynchronousDispatcher.lambda$preprocess$0(SynchronousDispatcher.java:160)
	at org.jboss.resteasy.core.interception.jaxrs.PreMatchContainerRequestContext.filter(PreMatchContainerRequestContext.java:362)
	at org.jboss.resteasy.core.SynchronousDispatcher.preprocess(SynchronousDispatcher.java:163)
	at org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:245)
	at io.quarkus.resteasy.runtime.standalone.RequestDispatcher.service(RequestDispatcher.java:73)
	at io.quarkus.resteasy.runtime.standalone.VertxRequestHandler.dispatch(VertxRequestHandler.java:123)
	at io.quarkus.resteasy.runtime.standalone.VertxRequestHandler.access$000(VertxRequestHandler.java:36)
	at io.quarkus.resteasy.runtime.standalone.VertxRequestHandler$1.run(VertxRequestHandler.java:87)
	at org.jboss.threads.ContextClassLoaderSavingRunnable.run(ContextClassLoaderSavingRunnable.java:35)
	at org.jboss.threads.EnhancedQueueExecutor.safeRun(EnhancedQueueExecutor.java:2046)
	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.doRunTask(EnhancedQueueExecutor.java:1578)
	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1452)
	at org.jboss.threads.DelegatingRunnable.run(DelegatingRunnable.java:29)
	at org.jboss.threads.ThreadLocalResettingRunnable.run(ThreadLocalResettingRunnable.java:29)
	at java.lang.Thread.run(Thread.java:748)
	at org.jboss.threads.JBossThread.run(JBossThread.java:479)
	at com.oracle.svm.core.thread.JavaThreads.threadStartRoutine(JavaThreads.java:497)
	at com.oracle.svm.core.posix.thread.PosixJavaThreads.pthreadStartRoutine(PosixJavaThreads.java:193)
Caused by: com.oracle.svm.core.jdk.UnsupportedFeatureError: ObjectOutputStream.writeObject()
	at com.oracle.svm.core.util.VMError.unsupportedFeature(VMError.java:101)
	at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:68)
	at org.apache.http.impl.client.BasicAuthCache.put(BasicAuthCache.java:107)
	at org.elasticsearch.client.RestClient.setHosts(RestClient.java:133)
	at org.elasticsearch.client.RestClient.<init>(RestClient.java:110)
	at org.elasticsearch.client.RestClientBuilder.build(RestClientBuilder.java:183)
	at com.xxxx.op.es.QuarkusElasticService.init(QuarkusElasticService.java:41)
	at com.xxxx.op.es.QuarkusElasticService_Bean.create(QuarkusElasticService_Bean.zig:301)
	at com.xxxx.op.es.QuarkusElasticService_Bean.create(QuarkusElasticService_Bean.zig:358)
	at io.quarkus.arc.impl.AbstractSharedContext.createInstanceHandle(AbstractSharedContext.java:79)
	at io.quarkus.arc.impl.ComputingCache$CacheFunction.lambda$apply$0(ComputingCache.java:99)
	at io.quarkus.arc.impl.LazyValue.get(LazyValue.java:26)
	at io.quarkus.arc.impl.ComputingCache.getValue(ComputingCache.java:41)
	at io.quarkus.arc.impl.AbstractSharedContext.get(AbstractSharedContext.java:25)
	at com.xxxx.op.es.QuarkusElasticService_ClientProxy.arc$delegate(QuarkusElasticService_ClientProxy.zig:123)
	at com.xxxx.op.es.QuarkusElasticService_ClientProxy.indexNewExceptionRecord(QuarkusElasticService_ClientProxy.zig:258)
	at com.xxxx.op.service.TagService.handleSingleException(TagService.java:216)
	at com.xxxx.op.service.TagService_ClientProxy.handleSingleException(TagService_ClientProxy.zig:329)
	at com.xxxx.op.TagResource.singleException(TagResource.java:49)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at org.jboss.resteasy.core.MethodInjectorImpl.invoke(MethodInjectorImpl.java:167)
	at org.jboss.resteasy.core.MethodInjectorImpl.invoke(MethodInjectorImpl.java:130)
	at org.jboss.resteasy.core.ResourceMethodInvoker.internalInvokeOnTarget(ResourceMethodInvoker.java:621)
	at org.jboss.resteasy.core.ResourceMethodInvoker.invokeOnTargetAfterFilter(ResourceMethodInvoker.java:487)
	at org.jboss.resteasy.core.ResourceMethodInvoker.lambda$invokeOnTarget$2(ResourceMethodInvoker.java:437)
	at org.jboss.resteasy.core.interception.jaxrs.PreMatchContainerRequestContext.filter(PreMatchContainerRequestContext.java:362)
	at org.jboss.resteasy.core.ResourceMethodInvoker.invokeOnTarget(ResourceMethodInvoker.java:439)
	at org.jboss.resteasy.core.ResourceMethodInvoker.invoke(ResourceMethodInvoker.java:400)
	at org.jboss.resteasy.core.ResourceMethodInvoker.invoke(ResourceMethodInvoker.java:374)
	at org.jboss.resteasy.core.ResourceMethodInvoker.invoke(ResourceMethodInvoker.java:67)
	at org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:488)
	... 19 more

@staticdev
Copy link

Any updates here? Is there a fix?

@clemlesne
Copy link

clemlesne commented Jul 3, 2020

I confirm this issue with:

  • GraalMV 20.0-b02
  • Java 11.0.6+9
  • Quarkus 1.5.2.Final
  • Elasticsearch REST client 7.8.0
  • RESTEasy 4.5.3.Final

Stacktraces:

2020-07-03 12:03:10,368 ERROR [io.qua.ver.htt.run.QuarkusErrorHandler] (executor-thread-1) HTTP Request to /xxx failed: org.jboss.resteasy.spi.UnhandledException: com.oracle.svm.core.jdk.UnsupportedFeatureError: ObjectOutputStream.writeObject()
	at org.jboss.resteasy.core.ExceptionHandler.handleApplicationException(ExceptionHandler.java:106)
	at org.jboss.resteasy.core.ExceptionHandler.handleException(ExceptionHandler.java:372)
	at org.jboss.resteasy.core.SynchronousDispatcher.writeException(SynchronousDispatcher.java:216)
	at org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:515)
	at org.jboss.resteasy.core.SynchronousDispatcher.lambda$invoke$4(SynchronousDispatcher.java:259)
	at org.jboss.resteasy.core.SynchronousDispatcher.lambda$preprocess$0(SynchronousDispatcher.java:160)
	at org.jboss.resteasy.core.interception.jaxrs.PreMatchContainerRequestContext.filter(PreMatchContainerRequestContext.java:362)
	at org.jboss.resteasy.core.SynchronousDispatcher.preprocess(SynchronousDispatcher.java:163)
	at org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:245)
	at io.quarkus.resteasy.runtime.standalone.RequestDispatcher.service(RequestDispatcher.java:73)
	at io.quarkus.resteasy.runtime.standalone.VertxRequestHandler.dispatch(VertxRequestHandler.java:132)
	at io.quarkus.resteasy.runtime.standalone.VertxRequestHandler.access$000(VertxRequestHandler.java:37)
	at io.quarkus.resteasy.runtime.standalone.VertxRequestHandler$1.run(VertxRequestHandler.java:94)
	at org.jboss.threads.ContextClassLoaderSavingRunnable.run(ContextClassLoaderSavingRunnable.java:35)
	at org.jboss.threads.EnhancedQueueExecutor.safeRun(EnhancedQueueExecutor.java:2046)
	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.doRunTask(EnhancedQueueExecutor.java:1578)
	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1452)
	at org.jboss.threads.DelegatingRunnable.run(DelegatingRunnable.java:29)
	at org.jboss.threads.ThreadLocalResettingRunnable.run(ThreadLocalResettingRunnable.java:29)
	at java.lang.Thread.run(Thread.java:834)
	at org.jboss.threads.JBossThread.run(JBossThread.java:479)
	at com.oracle.svm.core.thread.JavaThreads.threadStartRoutine(JavaThreads.java:527)
	at com.oracle.svm.core.posix.thread.PosixJavaThreads.pthreadStartRoutine(PosixJavaThreads.java:193)

Caused by: com.oracle.svm.core.jdk.UnsupportedFeatureError: ObjectOutputStream.writeObject()
	at com.oracle.svm.core.util.VMError.unsupportedFeature(VMError.java:101)
	at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:68)
	at org.apache.http.impl.client.BasicAuthCache.put(BasicAuthCache.java:107)
	at org.elasticsearch.client.RestClient.setNodes(RestClient.java:193)
	at org.elasticsearch.client.RestClient.<init>(RestClient.java:121)
	at org.elasticsearch.client.RestClientBuilder.build(RestClientBuilder.java:193)
	at org.elasticsearch.client.RestHighLevelClient.<init>(RestHighLevelClient.java:285)
	at org.elasticsearch.client.RestHighLevelClient.<init>(RestHighLevelClient.java:277)
	at org.enterpriseflowsrepository.api.traces.quarkus.clients.elasticsearch.HttpClient.getClient(HttpClient.java:477)
	at org.enterpriseflowsrepository.api.traces.quarkus.clients.elasticsearch.HttpClient.existsIndexAsync(HttpClient.java:232)
	at org.enterpriseflowsrepository.api.traces.quarkus.clients.elasticsearch.HttpClient_ClientProxy.existsIndexAsync(HttpClient_ClientProxy.zig:290)
	at org.enterpriseflowsrepository.api.traces.quarkus.repositories.TraceRepository.initialization(TraceRepository.java:74)
	at org.enterpriseflowsrepository.api.traces.quarkus.repositories.TraceRepository_Bean.create(TraceRepository_Bean.zig:325)
	at org.enterpriseflowsrepository.api.traces.quarkus.repositories.TraceRepository_Bean.create(TraceRepository_Bean.zig:341)
	at io.quarkus.arc.impl.AbstractSharedContext.createInstanceHandle(AbstractSharedContext.java:79)
	at io.quarkus.arc.impl.ComputingCache$CacheFunction.lambda$apply$0(ComputingCache.java:99)
	at io.quarkus.arc.impl.LazyValue.get(LazyValue.java:26)
	at io.quarkus.arc.impl.ComputingCache.getValue(ComputingCache.java:41)
	at io.quarkus.arc.impl.AbstractSharedContext.get(AbstractSharedContext.java:25)
	at org.enterpriseflowsrepository.api.traces.quarkus.repositories.TraceRepository_ClientProxy.arc$delegate(TraceRepository_ClientProxy.zig:92)
	at org.enterpriseflowsrepository.api.traces.quarkus.repositories.TraceRepository_ClientProxy.search(TraceRepository_ClientProxy.zig:186)
	at org.enterpriseflowsrepository.api.traces.quarkus.services.TracesService.getTraces(TracesService.java:76)
	at org.enterpriseflowsrepository.api.traces.quarkus.services.TracesService_Subclass.getTraces$$superaccessor1(TracesService_Subclass.zig:277)
	at org.enterpriseflowsrepository.api.traces.quarkus.services.TracesService_Subclass$$function$$1.apply(TracesService_Subclass$$function$$1.zig:47)
	at io.quarkus.arc.impl.AroundInvokeInvocationContext.proceed(AroundInvokeInvocationContext.java:54)
	at io.smallrye.faulttolerance.FaultToleranceInterceptor.lambda$syncFlow$5(FaultToleranceInterceptor.java:197)
	at io.smallrye.faulttolerance.core.InvocationContext.call(InvocationContext.java:20)
	at io.smallrye.faulttolerance.core.Invocation.apply(Invocation.java:24)
	at io.smallrye.faulttolerance.core.GeneralMetricsRecorder.apply(GeneralMetricsRecorder.java:17)
	at io.smallrye.faulttolerance.FaultToleranceInterceptor.syncFlow(FaultToleranceInterceptor.java:199)
	at io.smallrye.faulttolerance.FaultToleranceInterceptor.interceptCommand(FaultToleranceInterceptor.java:152)
	at io.smallrye.faulttolerance.FaultToleranceInterceptor_Bean.intercept(FaultToleranceInterceptor_Bean.zig:459)
	at io.quarkus.arc.impl.InterceptorInvocation.invoke(InterceptorInvocation.java:41)
	at io.quarkus.arc.impl.AroundInvokeInvocationContext.perform(AroundInvokeInvocationContext.java:41)
	at io.quarkus.arc.impl.InvocationContexts.performAroundInvoke(InvocationContexts.java:32)
	at org.enterpriseflowsrepository.api.traces.quarkus.services.TracesService_Subclass.getTraces(TracesService_Subclass.zig:230)
	at org.enterpriseflowsrepository.api.traces.quarkus.services.TracesService_ClientProxy.getTraces(TracesService_ClientProxy.zig:200)
	at java.lang.reflect.Method.invoke(Method.java:566)
	at org.jboss.resteasy.core.MethodInjectorImpl.invoke(MethodInjectorImpl.java:167)
	at org.jboss.resteasy.core.MethodInjectorImpl.invoke(MethodInjectorImpl.java:130)
	at org.jboss.resteasy.core.ResourceMethodInvoker.internalInvokeOnTarget(ResourceMethodInvoker.java:621)
	at org.jboss.resteasy.core.ResourceMethodInvoker.invokeOnTargetAfterFilter(ResourceMethodInvoker.java:487)
	at org.jboss.resteasy.core.ResourceMethodInvoker.lambda$invokeOnTarget$2(ResourceMethodInvoker.java:437)
	at org.jboss.resteasy.core.interception.jaxrs.PreMatchContainerRequestContext.filter(PreMatchContainerRequestContext.java:362)
	at org.jboss.resteasy.core.ResourceMethodInvoker.invokeOnTarget(ResourceMethodInvoker.java:439)
	at org.jboss.resteasy.core.ResourceMethodInvoker.invoke(ResourceMethodInvoker.java:400)
	at org.jboss.resteasy.core.ResourceMethodInvoker.invoke(ResourceMethodInvoker.java:374)
	at org.jboss.resteasy.core.ResourceMethodInvoker.invoke(ResourceMethodInvoker.java:67)
	at org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:488)
	... 19 more

@ziyilin
Copy link
Contributor

ziyilin commented Aug 6, 2020

I have committed a PR to support JDK serialization on JDK8: #2730
Don't know when it will get reviewed and merged, but if anyone really needs it he/she can pick the patch and build by him/herself.
Any feedback is welcomed.

@asdofindia
Copy link

I don't know whether this helps anyone, but when I'm using the elasticsearch extension released in quarkus 1.7.0 I don't get this error.

@nikitakakra
Copy link

I am also facing the same issue while using Elastic RestHighLevelClient for ES operations

  • GraalVM:19.2.1

  • AWS SDK:2.12.0

  • Micronaut : 2.0.0

Stacktraces:

Caused by: com.oracle.svm.core.jdk.UnsupportedFeatureError: ObjectOutputStream.writeObject()
	at com.oracle.svm.core.util.VMError.unsupportedFeature(VMError.java:102)
	at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:69)
	at org.apache.http.impl.client.BasicAuthCache.put(BasicAuthCache.java:107)
	at org.elasticsearch.client.RestClient.setNodes(RestClient.java:193)
	at org.elasticsearch.client.RestClient.<init>(RestClient.java:121)
	at org.elasticsearch.client.RestClientBuilder.build(RestClientBuilder.java:193)
	at org.elasticsearch.client.RestHighLevelClient.<init>(RestHighLevelClient.java:283)
	at org.elasticsearch.client.RestHighLevelClient.<init>(RestHighLevelClient.java:275)
	at com.trimble.example.AppConfig.getClient(AppConfig.java:28)
	at com.trimble.example.$AppConfig$GetClient0Definition.build(Unknown Source)
	at io.micronaut.context.DefaultBeanContext.doCreateBean(DefaultBeanContext.java:1888)
	io.micronaut.context.exceptions.BeanInstantiationException: Error instantiating bean of type [com.trimble.example.search.repository.ExampleSearchRepository]
	Message: ObjectOutputStream.writeObject()
	Path Taken: ExampleController.exampleService --> ExampleService.exampleSearchRepository --> ExampleSearchRepository.client
	at io.micronaut.context.DefaultBeanContext.doCreateBean(DefaultBeanContext.java:1915)
	at io.micronaut.context.DefaultBeanContext.createAndRegisterSingletonInternal(DefaultBeanContext.java:2630)
	at io.micronaut.context.DefaultBeanContext.createAndRegisterSingleton(DefaultBeanContext.java:2616)
	at io.micronaut.context.DefaultBeanContext.getBeanForDefinition(DefaultBeanContext.java:2299)
	at io.micronaut.context.DefaultBeanContext.getBeanInternal(DefaultBeanContext.java:2273)
	at io.micronaut.context.DefaultBeanContext.getBean(DefaultBeanContext.java:1233)
	at io.micronaut.context.AbstractBeanDefinition.getBeanForField(AbstractBeanDefinition.java:1465)
	at io.micronaut.context.AbstractBeanDefinition.getBeanForField(AbstractBeanDefinition.java:1225)
	at com.trimble.example.search.repository.$ExampleSearchRepositoryDefinition.injectBean(Unknown Source)
	at com.trimble.example.search.repository.$ExampleSearchRepositoryDefinition.build(Unknown Source)
	at io.micronaut.context.DefaultBeanContext.doCreateBean(DefaultBeanContext.java:1888)
	at io.micronaut.context.DefaultBeanContext.createAndRegisterSingletonInternal(DefaultBeanContext.java:2630)
	at io.micronaut.context.DefaultBeanContext.createAndRegisterSingleton(DefaultBeanContext.java:2616)
	at io.micronaut.context.DefaultBeanContext.getBeanForDefinition(DefaultBeanContext.java:2299)
	at io.micronaut.context.DefaultBeanContext.getBeanInternal(DefaultBeanContext.java:2273)
	at io.micronaut.context.DefaultBeanContext.getBean(DefaultBeanContext.java:1233)
	at io.micronaut.context.AbstractBeanDefinition.getBeanForField(AbstractBeanDefinition.java:1465)
	at io.micronaut.context.AbstractBeanDefinition.getBeanForField(AbstractBeanDefinition.java:1225)
	at com.trimble.example.service.$ExampleServiceDefinition.injectBean(Unknown Source)
	at com.trimble.example.service.$ExampleServiceDefinition.build(Unknown Source)
	at io.micronaut.context.DefaultBeanContext.doCreateBean(DefaultBeanContext.java:1888)
	at io.micronaut.context.DefaultBeanContext.createAndRegisterSingletonInternal(DefaultBeanContext.java:2630)
	at io.micronaut.context.DefaultBeanContext.createAndRegisterSingleton(DefaultBeanContext.java:2616)
	at io.micronaut.context.DefaultBeanContext.getBeanForDefinition(DefaultBeanContext.java:2299)
	at io.micronaut.context.DefaultBeanContext.getBeanInternal(DefaultBeanContext.java:2273)
	at io.micronaut.context.DefaultBeanContext.getBean(DefaultBeanContext.java:1233)
	at io.micronaut.context.AbstractBeanDefinition.getBeanForField(AbstractBeanDefinition.java:1465)
	at io.micronaut.context.AbstractBeanDefinition.getBeanForField(AbstractBeanDefinition.java:1225)
	at com.trimble.example.controller.$ExampleControllerDefinition.injectBean(Unknown Source)
	at com.trimble.example.controller.$ExampleControllerDefinition.build(Unknown Source)
	at io.micronaut.context.DefaultBeanContext.doCreateBean(DefaultBeanContext.java:1888)
	at io.micronaut.context.DefaultBeanContext.createAndRegisterSingletonInternal(DefaultBeanContext.java:2630)
	at io.micronaut.context.DefaultBeanContext.createAndRegisterSingleton(DefaultBeanContext.java:2616)
	at io.micronaut.context.DefaultBeanContext.getBeanForDefinition(DefaultBeanContext.java:2299)
	at io.micronaut.context.DefaultBeanContext.access$100(DefaultBeanContext.java:78)
	at io.micronaut.context.DefaultBeanContext$4.getTarget(DefaultBeanContext.java:425)
	at io.micronaut.context.DefaultBeanContext$4.invoke(DefaultBeanContext.java:468)
	at io.micronaut.web.router.AbstractRouteMatch.execute(AbstractRouteMatch.java:313)
	at io.micronaut.web.router.RouteMatch.execute(RouteMatch.java:117)
	at io.micronaut.function.aws.proxy.MicronautLambdaContainerHandler.executeRoute(MicronautLambdaContainerHandler.java:469)
	at io.micronaut.function.aws.proxy.MicronautLambdaContainerHandler.lambda$null$4(MicronautLambdaContainerHandler.java:299)
	at io.reactivex.internal.operators.flowable.FlowableDefer.subscribeActual(FlowableDefer.java:35)
	at io.reactivex.Flowable.subscribe(Flowable.java:14918)
	at io.reactivex.Flowable.subscribe(Flowable.java:14865)
	at io.micronaut.reactive.rxjava2.RxInstrumentedFlowable.subscribeActual(RxInstrumentedFlowable.java:58)
	at io.reactivex.Flowable.subscribe(Flowable.java:14918)
	at io.reactivex.Flowable.subscribe(Flowable.java:14865)
	at io.micronaut.http.server.context.ServerRequestContextFilter$1.subscribe(ServerRequestContextFilter.java:65)
	at io.reactivex.internal.operators.flowable.FlowableFromPublisher.subscribeActual(FlowableFromPublisher.java:29)
	at io.reactivex.Flowable.subscribe(Flowable.java:14918)
	at io.reactivex.Flowable.subscribe(Flowable.java:14865)
	at io.micronaut.reactive.rxjava2.RxInstrumentedFlowable.subscribeActual(RxInstrumentedFlowable.java:58)
	at io.reactivex.Flowable.subscribe(Flowable.java:14918)
	at io.reactivex.internal.operators.flowable.FlowableOnErrorNext.subscribeActual(FlowableOnErrorNext.java:40)
	at io.reactivex.Flowable.subscribe(Flowable.java:14918)
	at io.reactivex.Flowable.blockingFirst(Flowable.java:5698)
	at io.micronaut.function.aws.proxy.MicronautLambdaContainerHandler.lambda$handleRequest$8(MicronautLambdaContainerHandler.java:339)
	at io.micronaut.http.context.ServerRequestContext.with(ServerRequestContext.java:68)
	at io.micronaut.function.aws.proxy.MicronautLambdaContainerHandler.handleRequest(MicronautLambdaContainerHandler.java:270)
	at io.micronaut.function.aws.proxy.MicronautLambdaContainerHandler.handleRequest(MicronautLambdaContainerHandler.java:83)
	at io.micronaut.function.aws.proxy.AbstractLambdaContainerHandler.proxy(AbstractLambdaContainerHandler.java:205)
	at io.micronaut.function.aws.proxy.MicronautLambdaHandler.handleRequest(MicronautLambdaHandler.java:60)
	at io.micronaut.function.aws.proxy.MicronautLambdaHandler.handleRequest(MicronautLambdaHandler.java:36)
	at io.micronaut.function.aws.runtime.AbstractMicronautLambdaRuntime.startRuntimeApiEventLoop(AbstractMicronautLambdaRuntime.java:347)
	at io.micronaut.function.aws.runtime.AbstractMicronautLambdaRuntime.run(AbstractMicronautLambdaRuntime.java:129)
	at io.micronaut.function.aws.runtime.MicronautLambdaRuntime.main(MicronautLambdaRuntime.java:50)

@cfontes
Copy link

cfontes commented Sep 30, 2020

Facing this issue using

  • Quarkus 1.8.1
  • Building with maven -P native profile
  • GraalVM Version 20.2.0 (Java Version 11.0.8)
	at org.jboss.resteasy.core.ExceptionHandler.handleApplicationException(ExceptionHandler.java:106)
	at org.jboss.resteasy.core.ExceptionHandler.handleException(ExceptionHandler.java:372)
	at org.jboss.resteasy.core.SynchronousDispatcher.writeException(SynchronousDispatcher.java:216)
	at org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:515)
	at org.jboss.resteasy.core.SynchronousDispatcher.lambda$invoke$4(SynchronousDispatcher.java:259)
	at org.jboss.resteasy.core.SynchronousDispatcher.lambda$preprocess$0(SynchronousDispatcher.java:160)
	at org.jboss.resteasy.core.interception.jaxrs.PreMatchContainerRequestContext.filter(PreMatchContainerRequestContext.java:364)
	at org.jboss.resteasy.core.SynchronousDispatcher.preprocess(SynchronousDispatcher.java:163)
	at org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:245)
	at io.quarkus.resteasy.runtime.standalone.RequestDispatcher.service(RequestDispatcher.java:73)
	at io.quarkus.resteasy.runtime.standalone.VertxRequestHandler.dispatch(VertxRequestHandler.java:131)
	at io.quarkus.resteasy.runtime.standalone.VertxRequestHandler.access$000(VertxRequestHandler.java:37)
	at io.quarkus.resteasy.runtime.standalone.VertxRequestHandler$1.run(VertxRequestHandler.java:94)
	at org.jboss.threads.ContextClassLoaderSavingRunnable.run(ContextClassLoaderSavingRunnable.java:35)
	at org.jboss.threads.EnhancedQueueExecutor.safeRun(EnhancedQueueExecutor.java:2046)
	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.doRunTask(EnhancedQueueExecutor.java:1578)
	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1452)
	at org.jboss.threads.DelegatingRunnable.run(DelegatingRunnable.java:29)
	at org.jboss.threads.ThreadLocalResettingRunnable.run(ThreadLocalResettingRunnable.java:29)
	at java.lang.Thread.run(Thread.java:834)
	at org.jboss.threads.JBossThread.run(JBossThread.java:479)
	at com.oracle.svm.core.thread.JavaThreads.threadStartRoutine(JavaThreads.java:517)
	at com.oracle.svm.core.posix.thread.PosixJavaThreads.pthreadStartRoutine(PosixJavaThreads.java:192)
Caused by: com.oracle.svm.core.jdk.UnsupportedFeatureError: ObjectOutputStream.writeObject()
	at com.oracle.svm.core.util.VMError.unsupportedFeature(VMError.java:86)
	at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:68)
	at org.hibernate.internal.util.SerializationHelper.serialize(SerializationHelper.java:115)
	at org.hibernate.internal.util.SerializationHelper.serialize(SerializationHelper.java:144)
	at org.hibernate.internal.util.SerializationHelper.clone(SerializationHelper.java:75)
	at org.hibernate.type.descriptor.java.SerializableTypeDescriptor$SerializableMutabilityPlan.deepCopyNotNull(SerializableTypeDescriptor.java:41)
	at org.hibernate.type.descriptor.java.SerializableTypeDescriptor$SerializableMutabilityPlan.deepCopyNotNull(SerializableTypeDescriptor.java:32)
	at org.hibernate.type.descriptor.java.MutableMutabilityPlan.deepCopy(MutableMutabilityPlan.java:35)
	at org.hibernate.type.AbstractStandardBasicType.deepCopy(AbstractStandardBasicType.java:308)
	at org.hibernate.type.AbstractStandardBasicType.deepCopy(AbstractStandardBasicType.java:304)
	at org.hibernate.type.TypeHelper.deepCopy(TypeHelper.java:55)
	at org.hibernate.event.internal.AbstractSaveEventListener.performSaveOrReplicate(AbstractSaveEventListener.java:279)
	at org.hibernate.event.internal.AbstractSaveEventListener.performSave(AbstractSaveEventListener.java:193)
	at org.hibernate.event.internal.AbstractSaveEventListener.saveWithGeneratedId(AbstractSaveEventListener.java:135)
	at org.hibernate.event.internal.DefaultPersistEventListener.entityIsTransient(DefaultPersistEventListener.java:185)
	at org.hibernate.event.internal.DefaultPersistEventListener.onPersist(DefaultPersistEventListener.java:128)
	at org.hibernate.event.service.internal.EventListenerGroupImpl.fireEventOnEachListener(EventListenerGroupImpl.java:113)
	at org.hibernate.internal.SessionImpl.firePersist(SessionImpl.java:745)
	at org.hibernate.internal.SessionImpl.persist(SessionImpl.java:713)
	at org.hibernate.engine.spi.CascadingActions$7.cascade(CascadingActions.java:298)
	at org.hibernate.engine.internal.Cascade.cascadeToOne(Cascade.java:492)
	at org.hibernate.engine.internal.Cascade.cascadeAssociation(Cascade.java:416)
	at org.hibernate.engine.internal.Cascade.cascadeProperty(Cascade.java:218)
	at org.hibernate.engine.internal.Cascade.cascadeCollectionElements(Cascade.java:525)
	at org.hibernate.engine.internal.Cascade.cascadeCollection(Cascade.java:456)
	at org.hibernate.engine.internal.Cascade.cascadeAssociation(Cascade.java:419)
	at org.hibernate.engine.internal.Cascade.cascadeProperty(Cascade.java:218)
	at org.hibernate.engine.internal.Cascade.cascade(Cascade.java:151)
	at org.hibernate.event.internal.AbstractSaveEventListener.cascadeAfterSave(AbstractSaveEventListener.java:459)
	at org.hibernate.event.internal.AbstractSaveEventListener.performSaveOrReplicate(AbstractSaveEventListener.java:293)
	at org.hibernate.event.internal.AbstractSaveEventListener.performSave(AbstractSaveEventListener.java:193)
	at org.hibernate.event.internal.AbstractSaveEventListener.saveWithGeneratedId(AbstractSaveEventListener.java:135)
	at org.hibernate.event.internal.DefaultPersistEventListener.entityIsTransient(DefaultPersistEventListener.java:185)
	at org.hibernate.event.internal.DefaultPersistEventListener.onPersist(DefaultPersistEventListener.java:128)
	at org.hibernate.event.internal.DefaultPersistEventListener.onPersist(DefaultPersistEventListener.java:55)
	at org.hibernate.event.service.internal.EventListenerGroupImpl.fireEventOnEachListener(EventListenerGroupImpl.java:102)
	at org.hibernate.internal.SessionImpl.firePersist(SessionImpl.java:721)
	at org.hibernate.internal.SessionImpl.persist(SessionImpl.java:707)
	at io.quarkus.hibernate.orm.runtime.entitymanager.TransactionScopedEntityManager.persist(TransactionScopedEntityManager.java:112)
	at io.quarkus.hibernate.orm.runtime.entitymanager.ForwardingEntityManager.persist(ForwardingEntityManager.java:27)
	at io.quarkus.hibernate.orm.panache.common.runtime.AbstractJpaOperations.persist(AbstractJpaOperations.java:56)
	at io.quarkus.hibernate.orm.panache.common.runtime.AbstractJpaOperations.persist(AbstractJpaOperations.java:51)
	at io.quarkus.hibernate.orm.panache.runtime.JpaOperations.persist(JpaOperations.java:58)
	at io.quarkus.hibernate.orm.panache.PanacheEntityBase.persistAndFlush(PanacheEntityBase.java:69)
	at br.com.bftempreendimentos.importers.CsvBudgetAndProductImporter.parseSiengeBudgetReport(CsvBudgetAndProductImporter.java:56)
	at br.com.bftempreendimentos.importers.CsvBudgetAndProductImporter_ClientProxy.parseSiengeBudgetReport(CsvBudgetAndProductImporter_ClientProxy.zig:157)
	at br.com.bftempreendimentos.controllers.MultipartController.sendMultipartData(MultipartController.java:33)
	at br.com.bftempreendimentos.controllers.MultipartController_Subclass.sendMultipartData$$superaccessor1(MultipartController_Subclass.zig:221)
	at br.com.bftempreendimentos.controllers.MultipartController_Subclass$$function$$1.apply(MultipartController_Subclass$$function$$1.zig:33)
	at io.quarkus.arc.impl.AroundInvokeInvocationContext.proceed(AroundInvokeInvocationContext.java:54)
	at io.quarkus.narayana.jta.runtime.interceptor.TransactionalInterceptorBase.invokeInOurTx(TransactionalInterceptorBase.java:127)
	at io.quarkus.narayana.jta.runtime.interceptor.TransactionalInterceptorBase.invokeInOurTx(TransactionalInterceptorBase.java:100)
	at io.quarkus.narayana.jta.runtime.interceptor.TransactionalInterceptorRequired.doIntercept(TransactionalInterceptorRequired.java:32)
	at io.quarkus.narayana.jta.runtime.interceptor.TransactionalInterceptorBase.intercept(TransactionalInterceptorBase.java:53)
	at io.quarkus.narayana.jta.runtime.interceptor.TransactionalInterceptorRequired.intercept(TransactionalInterceptorRequired.java:26)
	at io.quarkus.narayana.jta.runtime.interceptor.TransactionalInterceptorRequired_Bean.intercept(TransactionalInterceptorRequired_Bean.zig:339)
	at io.quarkus.arc.impl.InterceptorInvocation.invoke(InterceptorInvocation.java:41)
	at io.quarkus.arc.impl.AroundInvokeInvocationContext.perform(AroundInvokeInvocationContext.java:41)
	at io.quarkus.arc.impl.InvocationContexts.performAroundInvoke(InvocationContexts.java:32)
	at br.com.bftempreendimentos.controllers.MultipartController_Subclass.sendMultipartData(MultipartController_Subclass.zig:169)
	at br.com.bftempreendimentos.controllers.MultipartController_ClientProxy.sendMultipartData(MultipartController_ClientProxy.zig:186)
	at java.lang.reflect.Method.invoke(Method.java:566)
	at org.jboss.resteasy.core.MethodInjectorImpl.invoke(MethodInjectorImpl.java:167)
	at org.jboss.resteasy.core.MethodInjectorImpl.invoke(MethodInjectorImpl.java:130)
	at org.jboss.resteasy.core.ResourceMethodInvoker.internalInvokeOnTarget(ResourceMethodInvoker.java:638)
	at org.jboss.resteasy.core.ResourceMethodInvoker.invokeOnTargetAfterFilter(ResourceMethodInvoker.java:504)
	at org.jboss.resteasy.core.ResourceMethodInvoker.lambda$invokeOnTarget$2(ResourceMethodInvoker.java:454)
	at org.jboss.resteasy.core.interception.jaxrs.PreMatchContainerRequestContext.filter(PreMatchContainerRequestContext.java:364)
	at org.jboss.resteasy.core.ResourceMethodInvoker.invokeOnTarget(ResourceMethodInvoker.java:456)
	at org.jboss.resteasy.core.ResourceMethodInvoker.invoke(ResourceMethodInvoker.java:417)
	at org.jboss.resteasy.core.ResourceMethodInvoker.invoke(ResourceMethodInvoker.java:391)
	at org.jboss.resteasy.core.ResourceMethodInvoker.invoke(ResourceMethodInvoker.java:68)
	at org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:488)
	... 19 mor```

@ppalaga
Copy link

ppalaga commented Jan 4, 2021

Support for JDK serialization/deserialization #2730 was merged recently and should be delivered with GraalVM 21.0.0

@peter-hofer
Copy link
Member

Support for JDK serialization/deserialization #2730 was merged recently and should be delivered with GraalVM 21.0.0

Indeed. Closing this issue.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Native Image
  
Done
Development

Successfully merging a pull request may close this issue.