[ 
https://issues.apache.org/jira/browse/SCB-562?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16468189#comment-16468189
 ] 

yangyongzheng commented on SCB-562:
-----------------------------------

I think unpublish this service impl is a good idea

> Java Chassis will throw NPE when producer impl do not contain any method
> ------------------------------------------------------------------------
>
>                 Key: SCB-562
>                 URL: https://issues.apache.org/jira/browse/SCB-562
>             Project: Apache ServiceComb
>          Issue Type: Bug
>          Components: Java-Chassis
>    Affects Versions: java-chassis-1.0.0-m1
>            Reporter: yangyongzheng
>            Priority: Major
>             Fix For: java-chassis-1.0.0-m2
>
>
> If a producer impl do not contain any method like :
> ```java
> @RestSchema(schemaId = "hello")
> @Path("/")
> public class HelloImpl {
> }
> ```
> Then an NPE will throw  when startup:
> 2018-05-09 08:50:04,333 [ERROR] cse init failed, 
> Exception: java.lang.NullPointerException; null
> java.lang.NullPointerException
>       at 
> org.apache.servicecomb.swagger.generator.core.utils.ClassUtils.createInterface(ClassUtils.java:212)
>       at 
> org.apache.servicecomb.swagger.generator.core.utils.ClassUtils.getOrCreateInterface(ClassUtils.java:203)
>       at 
> org.apache.servicecomb.swagger.generator.core.utils.ClassUtils.getOrCreateInterface(ClassUtils.java:182)
>       at 
> org.apache.servicecomb.core.definition.schema.AbstractSchemaFactory.generateSwagger(AbstractSchemaFactory.java:112)
>       at 
> org.apache.servicecomb.core.definition.schema.ProducerSchemaFactory.createSchema(ProducerSchemaFactory.java:110)
>       at 
> org.apache.servicecomb.core.definition.schema.ProducerSchemaFactory.createSchema(ProducerSchemaFactory.java:47)
>       at 
> org.apache.servicecomb.core.definition.schema.AbstractSchemaFactory.getOrCreateSchema(AbstractSchemaFactory.java:65)
>       at 
> org.apache.servicecomb.core.definition.schema.ProducerSchemaFactory.getOrCreateProducerSchema(ProducerSchemaFactory.java:80)
>       at 
> org.apache.servicecomb.provider.rest.common.RestProducerProvider.init(RestProducerProvider.java:48)
>       at 
> org.apache.servicecomb.core.provider.producer.ProducerProviderManager.init(ProducerProviderManager.java:45)
>       at 
> org.apache.servicecomb.core.CseApplicationListener.onApplicationEvent(CseApplicationListener.java:118)
>       at 
> org.springframework.context.event.SimpleApplicationEventMulticaster.invokeListener(SimpleApplicationEventMulticaster.java:166)
>       at 
> org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:138)
>       at 
> org.springframework.context.support.AbstractApplicationContext.publishEvent(AbstractApplicationContext.java:383)
>       at 
> org.springframework.context.support.AbstractApplicationContext.publishEvent(AbstractApplicationContext.java:337)
>       at 
> org.springframework.context.support.AbstractApplicationContext.finishRefresh(AbstractApplicationContext.java:882)
>       at 
> org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:545)
>       at 
> org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:139)
>       at 
> org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:93)
>       at 
> org.apache.servicecomb.foundation.common.utils.BeanUtils.init(BeanUtils.java:37)
>       at 
> org.apache.servicecomb.foundation.common.utils.BeanUtils.init(BeanUtils.java:33)
>       at io.demo.Application.main(Application.java:40)
>  
> org.apache.servicecomb.core.CseApplicationListener.onApplicationEvent(CseApplicationListener.java:145)



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to