-
Notifications
You must be signed in to change notification settings - Fork 1.3k
Description
here is some error info:
2020-09-07 13:52:14,944 [ - /// - ] ERROR boot.SpringApplication - Application run failed
java.lang.NullPointerException
at com.alipay.sofa.runtime.invoke.DynamicJvmServiceProxyFinder.findServiceProxy(DynamicJvmServiceProxyFinder.java:114)
at com.alipay.sofa.runtime.service.component.ReferenceComponent.getServiceTarget(ReferenceComponent.java:256)
at com.alipay.sofa.runtime.service.component.ReferenceComponent.isHealthy(ReferenceComponent.java:103)
at com.alipay.sofa.healthcheck.impl.ComponentHealthChecker.isHealthy(ComponentHealthChecker.java:60)
at com.alipay.sofa.healthcheck.HealthCheckerProcessor.doHealthCheck(HealthCheckerProcessor.java:136)
at
com.alipay.sofa.healthcheck.HealthCheckerProcessor.lambda$readinessHealthCheck$4(HealthCheckerProcessor.java:108)
my code to publish sofa service is:
<sofa:service interface="com.alipay.serverless.base.facade.SampleService" ref="sampleService">
<!-- BUG ? WHEN PUBLISH BOLT, CAUSE MODULE SETUP DOWM -->
<sofa:binding.bolt/>
</sofa:service>
NPE occured at sofaboot codes ,because variable serviceJvmBinding is null:
JvmBinding referenceJvmBinding = (JvmBinding) contract
.getBinding(JvmBinding.JVM_BINDING_TYPE);
JvmBinding serviceJvmBinding = (JvmBinding) serviceComponent.getService().getBinding(
JvmBinding.JVM_BINDING_TYPE);
boolean serialize = referenceJvmBinding.getJvmBindingParam().isSerialize()
|| serviceJvmBinding.getJvmBindingParam().isSerialize();
return new DynamicJvmServiceInvoker(clientClassloader,
sofaRuntimeManager.getAppClassLoader(), serviceComponent.getService().getTarget(),
contract, biz.getIdentity(), serialize);