1. 出现空指针的原因是:
spring mvc扫描的时候根本无法识别@Reference ,同一方面,dubbo的扫描也无法识别Spring @Controller ,所以两个扫描的顺序要排列好,
》如果先扫了controller,这时候把控制器都实例化好了,再扫dubbo的服务,就会出现空指针。
》如果先扫dubbo,这个时候@Reference生效,接口实例化了,在扫controller,就不会出现空指针。
2. 解决:
》让dubbo扫描在controller扫描之前:
<!--spring扫描:@Controller --> <context:component-scan base-package="com.ll.action" /> <!--dubbo扫描:@Reference--> <dubbo:annotation package="com.ll.action" />
》让dubbo配置在springMVC配置之前加载:
<import resource="consumer.xml" /> <import resource="spring-mvc.xml" />
原文地址:https://www.cnblogs.com/luliang888/p/11219222.html
时间: 2024-10-19 20:49:50