imgoby opened a new issue, #13670:
URL: https://github.com/apache/dubbo/issues/13670

   
![image](https://github.com/apache/dubbo/assets/27885492/167771bf-c69f-4046-9e9c-26263881dd62)
   
   if field's registerType is interface java.io.Serializable, there is an 
Exception.
   
   
   dubbo version: <dubbo.version>3.3.0-beta.1</dubbo.version>
   native-image builds it.
   What causes it?
   
   ```
   
   21:49:45.601 logback [main] INFO  o.s.c.s.binder.DefaultBinderFactory - 
Pre-creating binder child context (AOT) for rocketmq
   Exception in thread "main" java.lang.NullPointerException: Cannot invoke 
"java.lang.Class.isPrimitive()" because "cls" is null
        at 
org.apache.dubbo.config.spring6.utils.AotUtils.isPrimitive(AotUtils.java:59)
        at 
org.apache.dubbo.config.spring6.utils.AotUtils.registerSerializationType(AotUtils.java:44)
        at 
org.apache.dubbo.config.spring6.utils.AotUtils.registerSerializationType(AotUtils.java:52)
        at 
org.apache.dubbo.config.spring6.utils.AotUtils.lambda$registerSerializationType$2(AotUtils.java:50)
        at 
java.base/java.util.Spliterators$ArraySpliterator.forEachRemaining(Spliterators.java:992)
        at 
java.base/java.util.stream.ReferencePipeline$Head.forEach(ReferencePipeline.java:762)
        at 
org.apache.dubbo.config.spring6.utils.AotUtils.registerSerializationType(AotUtils.java:50)
        at 
org.apache.dubbo.config.spring6.utils.AotUtils.lambda$registerSerializationForService$1(AotUtils.java:39)
        at 
java.base/java.util.Spliterators$ArraySpliterator.forEachRemaining(Spliterators.java:992)
        at 
java.base/java.util.stream.ReferencePipeline$Head.forEach(ReferencePipeline.java:762)
        at 
org.apache.dubbo.config.spring6.utils.AotUtils.registerSerializationForService(AotUtils.java:36)
        at 
org.apache.dubbo.config.spring6.beans.factory.annotation.ReferenceAnnotationWithAotBeanPostProcessor$AotContribution.generateMethodStatementForElement(ReferenceAnnotationWithAotBeanPostProcessor.java:256)
        at 
org.apache.dubbo.config.spring6.beans.factory.annotation.ReferenceAnnotationWithAotBeanPostProcessor$AotContribution.generateMethodCode(ReferenceAnnotationWithAotBeanPostProcessor.java:233)
        at 
org.apache.dubbo.config.spring6.beans.factory.annotation.ReferenceAnnotationWithAotBeanPostProcessor$AotContribution.lambda$applyTo$1(ReferenceAnnotationWithAotBeanPostProcessor.java:219)
        at 
org.springframework.aot.generate.GeneratedMethod.<init>(GeneratedMethod.java:54)
        at 
org.springframework.aot.generate.GeneratedMethods.add(GeneratedMethods.java:112)
        at 
org.springframework.aot.generate.GeneratedMethods.add(GeneratedMethods.java:89)
        at 
org.apache.dubbo.config.spring6.beans.factory.annotation.ReferenceAnnotationWithAotBeanPostProcessor$AotContribution.applyTo(ReferenceAnnotationWithAotBeanPostProcessor.java:212)
        at 
org.springframework.beans.factory.aot.BeanDefinitionMethodGenerator.lambda$generateBeanDefinitionMethod$2(BeanDefinitionMethodGenerator.java:186)
        at java.base/java.util.ArrayList.forEach(ArrayList.java:1511)
        at 
org.springframework.beans.factory.aot.BeanDefinitionMethodGenerator.generateBeanDefinitionMethod(BeanDefinitionMethodGenerator.java:186)
        at 
org.springframework.beans.factory.aot.BeanDefinitionMethodGenerator.generateBeanDefinitionMethod(BeanDefinitionMethodGenerator.java:109)
        at 
org.springframework.beans.factory.aot.BeanRegistrationsAotContribution.lambda$generateRegisterBeanDefinitionsMethod$2(BeanRegistrationsAotContribution.java:93)
        at java.base/java.util.LinkedHashMap.forEach(LinkedHashMap.java:721)
        at 
org.springframework.beans.factory.aot.BeanRegistrationsAotContribution.generateRegisterBeanDefinitionsMethod(BeanRegistrationsAotContribution.java:91)
        at 
org.springframework.beans.factory.aot.BeanRegistrationsAotContribution.lambda$applyTo$1(BeanRegistrationsAotContribution.java:76)
        at 
org.springframework.aot.generate.GeneratedMethod.<init>(GeneratedMethod.java:54)
        at 
org.springframework.aot.generate.GeneratedMethods.add(GeneratedMethods.java:112)
        at 
org.springframework.aot.generate.GeneratedMethods.add(GeneratedMethods.java:89)
        at 
org.springframework.beans.factory.aot.BeanRegistrationsAotContribution.applyTo(BeanRegistrationsAotContribution.java:75)
        at 
org.springframework.context.aot.BeanFactoryInitializationAotContributions.applyTo(BeanFactoryInitializationAotContributions.java:78)
        at 
org.springframework.context.aot.ApplicationContextAotGenerator.lambda$processAheadOfTime$0(ApplicationContextAotGenerator.java:58)
        at 
org.springframework.context.aot.ApplicationContextAotGenerator.withCglibClassHandler(ApplicationContextAotGenerator.java:67)
        at 
org.springframework.context.aot.ApplicationContextAotGenerator.processAheadOfTime(ApplicationContextAotGenerator.java:53)
        at 
org.springframework.context.aot.ContextAotProcessor.performAotProcessing(ContextAotProcessor.java:106)
        at 
org.springframework.context.aot.ContextAotProcessor.doProcess(ContextAotProcessor.java:84)
        at 
org.springframework.context.aot.ContextAotProcessor.doProcess(ContextAotProcessor.java:49)
        at 
org.springframework.context.aot.AbstractAotProcessor.process(AbstractAotProcessor.java:82)
        at 
org.springframework.boot.SpringApplicationAotProcessor.main(SpringApplicationAotProcessor.java:80)
   ```


-- 
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: notifications-unsubscr...@dubbo.apache.org.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: notifications-unsubscr...@dubbo.apache.org
For additional commands, e-mail: notifications-h...@dubbo.apache.org

Reply via email to