urlyy opened a new issue, #2637:
URL: https://github.com/apache/fory/issues/2637

   ### Search before asking
   
   - [x] I had searched in the [issues](https://github.com/apache/fory/issues) 
and found no similar issues.
   
   
   ### Version
   
   Latest
   
   ### Component(s)
   
   Java
   
   ### Minimal reproduce step
   
   ```java
   enum Color {
       Green,
   }  
   
   @Test
   public void testRegisterEnumByName() {
     Fory fory =
         Fory.builder()
             .withLanguage(Language.XLANG)
             .withCompatibleMode(CompatibleMode.COMPATIBLE)
             .build();
     fory.register(Color.class, "demo", "color");
     byte[] serialize = fory.serialize(Color.White);
   }
   ```
   
   ### What did you expect to see?
   
   pass unit test
   
   ### What did you see instead?
   
   ```
   
   org.apache.fory.exception.SerializationException: 
java.lang.IllegalArgumentException: class org.apache.fory.RustXlangTest$Color 
is not a struct
   
        at org.apache.fory.Fory.processSerializationError(Fory.java:371)
        at org.apache.fory.Fory.serialize(Fory.java:340)
        at org.apache.fory.Fory.serialize(Fory.java:288)
        at 
org.apache.fory.RustXlangTest.testRegisterByName(RustXlangTest.java:528)
        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.testng.internal.invokers.MethodInvocationHelper.invokeMethod(MethodInvocationHelper.java:136)
        at 
org.testng.internal.invokers.TestInvoker.invokeMethod(TestInvoker.java:658)
        at 
org.testng.internal.invokers.TestInvoker.invokeTestMethod(TestInvoker.java:219)
        at 
org.testng.internal.invokers.MethodRunner.runInSequence(MethodRunner.java:50)
        at 
org.testng.internal.invokers.TestInvoker$MethodInvocationAgent.invoke(TestInvoker.java:923)
        at 
org.testng.internal.invokers.TestInvoker.invokeTestMethods(TestInvoker.java:192)
        at 
org.testng.internal.invokers.TestMethodWorker.invokeTestMethods(TestMethodWorker.java:146)
        at 
org.testng.internal.invokers.TestMethodWorker.run(TestMethodWorker.java:128)
        at java.util.ArrayList.forEach(ArrayList.java:1259)
        at org.testng.TestRunner.privateRun(TestRunner.java:808)
        at org.testng.TestRunner.run(TestRunner.java:603)
        at org.testng.SuiteRunner.runTest(SuiteRunner.java:429)
        at org.testng.SuiteRunner.runSequentially(SuiteRunner.java:423)
        at org.testng.SuiteRunner.privateRun(SuiteRunner.java:383)
        at org.testng.SuiteRunner.run(SuiteRunner.java:326)
        at org.testng.SuiteRunnerWorker.runSuite(SuiteRunnerWorker.java:52)
        at org.testng.SuiteRunnerWorker.run(SuiteRunnerWorker.java:95)
        at org.testng.TestNG.runSuitesSequentially(TestNG.java:1249)
        at org.testng.TestNG.runSuitesLocally(TestNG.java:1169)
        at org.testng.TestNG.runSuites(TestNG.java:1092)
        at org.testng.TestNG.run(TestNG.java:1060)
        at com.intellij.rt.testng.IDEARemoteTestNG.run(IDEARemoteTestNG.java:65)
        at 
com.intellij.rt.testng.RemoteTestNGStarter.main(RemoteTestNGStarter.java:105)
   Caused by: java.lang.IllegalArgumentException: class 
org.apache.fory.RustXlangTest$Color is not a struct
        at 
org.apache.fory.util.Preconditions.checkArgument(Preconditions.java:77)
        at 
org.apache.fory.meta.TypeDefEncoder.encodeClassDef(TypeDefEncoder.java:97)
        at 
org.apache.fory.meta.TypeDefEncoder.buildClassDefWithFieldInfos(TypeDefEncoder.java:81)
        at 
org.apache.fory.meta.TypeDefEncoder.buildTypeDef(TypeDefEncoder.java:65)
        at org.apache.fory.meta.ClassDef.buildClassDef(ClassDef.java:1031)
        at org.apache.fory.meta.ClassDef.buildClassDef(ClassDef.java:1026)
        at 
org.apache.fory.resolver.XtypeResolver.lambda$buildClassDef$2(XtypeResolver.java:665)
        at java.util.HashMap.computeIfAbsent(HashMap.java:1128)
        at 
org.apache.fory.resolver.XtypeResolver.buildClassDef(XtypeResolver.java:665)
        at 
org.apache.fory.resolver.XtypeResolver.writeSharedClassMeta(XtypeResolver.java:657)
        at 
org.apache.fory.resolver.XtypeResolver.writeClassInfo(XtypeResolver.java:627)
        at 
org.apache.fory.resolver.XtypeResolver.writeClassInfo(XtypeResolver.java:613)
        at org.apache.fory.Fory.xwriteRef(Fory.java:556)
        at org.apache.fory.Fory.xwrite(Fory.java:430)
        at org.apache.fory.Fory.serialize(Fory.java:336)
        ... 29 more
   ```
   
   ### Anything Else?
   
   _No response_
   
   ### Are you willing to submit a PR?
   
   - [ ] I'm willing to submit a PR!


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to