springMVC整合dubbo问题及解决方法

1. 注解方式,提供者正常,但消费者获取不到对象,提示空指针;测试过程中发现service必须声明为static才可以正常使用。

原因分析:与注解顺序有关

解决方法:指定springMVC与dubbo注解扫描的顺序

     <!-- 自动扫描该包,使SpringMVC认为包下用了@controller注解的类是控制器 -->
     <context:component-scan base-package="xxx.controller" />
     <mvc:annotation-driven />
	
    <dubbo:application name="base-service-consumer"></dubbo:application>
    <!-- 使用zookeeper注册中心暴露服务地址 -->  
    <dubbo:annotation package="xxxxxxxxx"/>

2.警告: 多个不同应用注册了相同服务,请检查aaa-provider和bbb-provider中是否有误暴露

  解决方法: 提供同一个服务的不同provider应该将dubbo.application.name=base-service-provider 改成同一个名字

3. @Reference只能在springbean实例对应的当前类中使用,无法在父类使用;

    父类中如果要用 ,可通过xml配置文件配置dubbo:reference,然后在需要引用的地方就可以正常引用


版权声明:本文为dou612原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。