You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
On 0.6.0-dev-674/0.2.0-dev-52, I could pass an enum to a method remotely via RESTClient
In 0.6 RC, even with @JsonPersistable added to the enum, I am getting build-time errors (see below).
Should passing enums work? Or do I need to wrapper them in another class?
`
[ERROR] Error calling proxy method org.teavm.flavour.json.JSON.getClassSerializer(Lorg/teavm/metaprogramming/ReflectClass;)V: java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.teavm.metaprogramming.impl.UsageGenerator.emitPermutation(UsageGenerator.java:159)
at org.teavm.metaprogramming.impl.UsageGenerator.lambda$installProxyEmitter$0(UsageGenerator.java:84)
at org.teavm.dependency.DependencyAnalyzer.schedulePropagation(DependencyAnalyzer.java:323)
at org.teavm.dependency.DependencyNode.scheduleSingleType(DependencyNode.java:96)
at org.teavm.dependency.DependencyNode.propagate(DependencyNode.java:68)
at org.teavm.dependency.DependencyGraphBuilder$1.lambda$invokeGetClass$1(DependencyGraphBuilder.java:394)
at org.teavm.dependency.DependencyAnalyzer.schedulePropagation(DependencyAnalyzer.java:323)
at org.teavm.dependency.DependencyAnalyzer.schedulePropagation(DependencyAnalyzer.java:380)
at org.teavm.dependency.DependencyNode.scheduleMultipleTypes(DependencyNode.java:215)
at org.teavm.dependency.Transition.mergeDomains(Transition.java:69)
at org.teavm.dependency.Transition.propagate(Transition.java:49)
at org.teavm.dependency.Transition.consume(Transition.java:39)
at org.teavm.dependency.DependencyAnalyzer.schedulePropagation(DependencyAnalyzer.java:338)
at org.teavm.dependency.DependencyAnalyzer.schedulePropagation(DependencyAnalyzer.java:354)
at org.teavm.dependency.DependencyNode.scheduleMultipleTypes(DependencyNode.java:189)
at org.teavm.dependency.Transition.mergeDomains(Transition.java:69)
at org.teavm.dependency.Transition.propagate(Transition.java:49)
at org.teavm.dependency.Transition.propagate(Transition.java:49)
at org.teavm.dependency.Transition.consume(Transition.java:39)
at org.teavm.dependency.DependencyAnalyzer.schedulePropagation(DependencyAnalyzer.java:338)
at org.teavm.dependency.DependencyNode.scheduleSingleType(DependencyNode.java:90)
at org.teavm.dependency.DependencyNode.propagate(DependencyNode.java:68)
at org.teavm.dependency.Transition.propagate(Transition.java:51)
at org.teavm.dependency.Transition.consume(Transition.java:39)
at org.teavm.dependency.DependencyAnalyzer.processNodeToNodeTransitionQueue(DependencyAnalyzer.java:683)
at org.teavm.dependency.DependencyAnalyzer.processQueue(DependencyAnalyzer.java:655)
at org.teavm.dependency.DependencyAnalyzer.processDependencies(DependencyAnalyzer.java:697)
at org.teavm.vm.TeaVM.build(TeaVM.java:376)
at org.teavm.tooling.TeaVMTool.generate(TeaVMTool.java:413)
at org.teavm.tooling.builder.InProcessBuildStrategy.build(InProcessBuildStrategy.java:247)
at org.teavm.maven.TeaVMCompileMojo.executeWithBuilder(TeaVMCompileMojo.java:289)
at org.teavm.maven.TeaVMCompileMojo.execute(TeaVMCompileMojo.java:238)
at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:137)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:208)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:154)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:146)
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:117)
at org.apache.maven.lifecycle.internal.builder.multithreaded.MultiThreadedBuilder$1.call(MultiThreadedBuilder.java:200)
at org.apache.maven.lifecycle.internal.builder.multithreaded.MultiThreadedBuilder$1.call(MultiThreadedBuilder.java:196)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
Caused by: java.lang.NullPointerException
at org.teavm.flavour.json.emit.ClassInformationProvider.createClassInformation(ClassInformationProvider.java:85)
at org.teavm.flavour.json.emit.ClassInformationProvider.get(ClassInformationProvider.java:57)
at org.teavm.flavour.json.emit.JsonSerializerEmitter.emitClassSerializer(JsonSerializerEmitter.java:171)
at org.teavm.flavour.json.emit.JsonSerializerEmitter.getClassSerializer(JsonSerializerEmitter.java:114)
at org.teavm.flavour.json.emit.JsonSerializerEmitter.returnClassSerializer(JsonSerializerEmitter.java:103)
at org.teavm.flavour.json.JSON.getClassSerializer(JSON.java:64)
... 48 more
at org.teavm.flavour.json.JSON.getClassSerializer
at org.teavm.flavour.json.JSON.getObjectSerializer(JSON.java:58)
at org.teavm.flavour.json.JSON.serialize(JSON.java:49)
at org.teavm.flavour.json.JSON.serialize(JSON.java:42)
at com.xxx.yyy.ZzzFacade$proxy$2_0_0.xxxYyy(FactoryEmitter.java:225)
at com.xxx.yyy.ZzzView$1.run(xxx.yyy.ZzzView.java:85)
at java.lang.Thread.runThread(TThread.java:78)
at java.lang.Thread$start$lambda$_4_0.run(TThread.java:70)
at org.teavm.platform.Platform.launchThread(Platform.java:186)
`
The text was updated successfully, but these errors were encountered:
On 0.6.0-dev-674/0.2.0-dev-52, I could pass an enum to a method remotely via RESTClient
In 0.6 RC, even with @JsonPersistable added to the enum, I am getting build-time errors (see below).
Should passing enums work? Or do I need to wrapper them in another class?
`
[ERROR] Error calling proxy method org.teavm.flavour.json.JSON.getClassSerializer(Lorg/teavm/metaprogramming/ReflectClass;)V: java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.teavm.metaprogramming.impl.UsageGenerator.emitPermutation(UsageGenerator.java:159)
at org.teavm.metaprogramming.impl.UsageGenerator.lambda$installProxyEmitter$0(UsageGenerator.java:84)
at org.teavm.dependency.DependencyAnalyzer.schedulePropagation(DependencyAnalyzer.java:323)
at org.teavm.dependency.DependencyNode.scheduleSingleType(DependencyNode.java:96)
at org.teavm.dependency.DependencyNode.propagate(DependencyNode.java:68)
at org.teavm.dependency.DependencyGraphBuilder$1.lambda$invokeGetClass$1(DependencyGraphBuilder.java:394)
at org.teavm.dependency.DependencyAnalyzer.schedulePropagation(DependencyAnalyzer.java:323)
at org.teavm.dependency.DependencyAnalyzer.schedulePropagation(DependencyAnalyzer.java:380)
at org.teavm.dependency.DependencyNode.scheduleMultipleTypes(DependencyNode.java:215)
at org.teavm.dependency.Transition.mergeDomains(Transition.java:69)
at org.teavm.dependency.Transition.propagate(Transition.java:49)
at org.teavm.dependency.Transition.consume(Transition.java:39)
at org.teavm.dependency.DependencyAnalyzer.schedulePropagation(DependencyAnalyzer.java:338)
at org.teavm.dependency.DependencyAnalyzer.schedulePropagation(DependencyAnalyzer.java:354)
at org.teavm.dependency.DependencyNode.scheduleMultipleTypes(DependencyNode.java:189)
at org.teavm.dependency.Transition.mergeDomains(Transition.java:69)
at org.teavm.dependency.Transition.propagate(Transition.java:49)
at org.teavm.dependency.Transition.propagate(Transition.java:49)
at org.teavm.dependency.Transition.consume(Transition.java:39)
at org.teavm.dependency.DependencyAnalyzer.schedulePropagation(DependencyAnalyzer.java:338)
at org.teavm.dependency.DependencyNode.scheduleSingleType(DependencyNode.java:90)
at org.teavm.dependency.DependencyNode.propagate(DependencyNode.java:68)
at org.teavm.dependency.Transition.propagate(Transition.java:51)
at org.teavm.dependency.Transition.consume(Transition.java:39)
at org.teavm.dependency.DependencyAnalyzer.processNodeToNodeTransitionQueue(DependencyAnalyzer.java:683)
at org.teavm.dependency.DependencyAnalyzer.processQueue(DependencyAnalyzer.java:655)
at org.teavm.dependency.DependencyAnalyzer.processDependencies(DependencyAnalyzer.java:697)
at org.teavm.vm.TeaVM.build(TeaVM.java:376)
at org.teavm.tooling.TeaVMTool.generate(TeaVMTool.java:413)
at org.teavm.tooling.builder.InProcessBuildStrategy.build(InProcessBuildStrategy.java:247)
at org.teavm.maven.TeaVMCompileMojo.executeWithBuilder(TeaVMCompileMojo.java:289)
at org.teavm.maven.TeaVMCompileMojo.execute(TeaVMCompileMojo.java:238)
at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:137)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:208)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:154)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:146)
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:117)
at org.apache.maven.lifecycle.internal.builder.multithreaded.MultiThreadedBuilder$1.call(MultiThreadedBuilder.java:200)
at org.apache.maven.lifecycle.internal.builder.multithreaded.MultiThreadedBuilder$1.call(MultiThreadedBuilder.java:196)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
Caused by: java.lang.NullPointerException
at org.teavm.flavour.json.emit.ClassInformationProvider.createClassInformation(ClassInformationProvider.java:85)
at org.teavm.flavour.json.emit.ClassInformationProvider.get(ClassInformationProvider.java:57)
at org.teavm.flavour.json.emit.JsonSerializerEmitter.emitClassSerializer(JsonSerializerEmitter.java:171)
at org.teavm.flavour.json.emit.JsonSerializerEmitter.getClassSerializer(JsonSerializerEmitter.java:114)
at org.teavm.flavour.json.emit.JsonSerializerEmitter.returnClassSerializer(JsonSerializerEmitter.java:103)
at org.teavm.flavour.json.JSON.getClassSerializer(JSON.java:64)
... 48 more
`
The text was updated successfully, but these errors were encountered: