You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@servicecomb.apache.org by "yangyongzheng (JIRA)" <ji...@apache.org> on 2018/05/09 00:57:00 UTC

[jira] [Created] (SCB-562) Java Chassis will throw NPE when producer impl do not contain any method

yangyongzheng created SCB-562:
---------------------------------

             Summary: 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
             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)