Spring-Boot 整合Dubbo 解决@Reference 注解为null情况
首先检查一下你的spring boot版本是多少?
如果是2.X 不用看了,spring boot 2.x 必定会出现这个问题,
改为 1.5.9 或其他1.x版本,目前生产环境建议使用1.x版本。
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.5.9.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
然后下面是正确的配置:
服务消费者端配置文件:
#zk地址
spring.dubbo.registry.address=zookeeper://120.79.168.47:2181
#对应服务提供者name
spring.dubbo.protocol.name=dubbo
#扫描包路径
spring.dubbo.scan=com.diko.graduation.system.config
#服务消费者应用名称
spring.dubbo.application.name=system
服务提供者配置文件 #服务提供者应用名称
spring.dubbo.application.name=rpc-base
#zk地址
spring.dubbo.registry.address=zookeeper://120.79.168.47:2181
#接口组名称
spring.dubbo.protocol.name=dubbo
#接口组端口
spring.dubbo.protocol.port=20880
#扫描包路径
spring.dubbo.scan=com.diko.graduation.rpcbase
如果还未解决,可能导致的另外一种原因是:服务提供者注册的地址有误,也就是服务提供者主机上有多个ip连接地址,如下图

而注册到zk上的地址刚刚是内网或者是虚拟机的某个地址,导致外网其他主机无法访问到此地址上。
zk注册的地址:

如果还未解决,参考下列非正规两种解决方式:
1.使用Xml配置文件解决。
2.使用直连模式连接引用。
下面是第二种方法代码如下:
@Reference(url = "dubbo://localhost:20880")
private ExpressService expressService;
结合全网的答案,目前只发现以上两种方式解决。
下面是Spring boot 官方例子,用的是第二种方法:
连接:https://github.com/apache/incubator-dubbo-spring-boot-project/blob/master/README_CN.md
1.提供者代码


2.消费者代码


Spring-Boot 整合Dubbo 解决@Reference 注解为null情况的更多相关文章
- Spring Boot 整合 Dubbo和Zookeeper
Spring Boot 整合 Dubbo和Zookeeper Spring Boot 整合 Dubbo和Zookeeper 环境介绍 Zookeeper 安装 启动 Dubbo admin 搭建 创建 ...
- Spring Boot整合dubbo(注解的方式)
一.创建项目 1.创建一个空的项目 2.在空的项目中添加两个Spring Boot模块,如下图所示 二.在provider模块中的pom文件中添加依赖 <dependency> <g ...
- Spring Boot整合Dubbo使用及开发笔记
一.概述: Spring Dubbo是我开发的一个基于spring-boot和dubbo,目的是使用Spring boot的风格来使用dubbo.(即可以了解Spring boot的启动过程又可以学习 ...
- spring boot 2.x 系列 —— spring boot 整合 dubbo
文章目录 一. 项目结构说明 二.关键依赖 三.公共模块(boot-dubbo-common) 四. 服务提供者(boot-dubbo-provider) 4.1 提供方配置 4.2 使用注解@Ser ...
- Spring Boot整合Dubbo框架demo
Dubbo框架原理见之前的博文:http://www.cnblogs.com/umgsai/p/5836925.html 首先启动zookeeper Server端 Pom配置如下 <?xml ...
- spring boot 整合dubbo
dubbo与springboot的集成和使用dubbo-spring-boot-starter SpringBoot整合Dubbo2.5.10(官方的spring-boot-starter0.1.0) ...
- dubbo学习(十)spring boot整合dubbo
工程搭建与配置 生产者 1.创建一个生产者的spring boot工程,配置好依赖,并把接口实现类文件夹复制到新的工程里 2.pom.xml配置dubbo的相关依赖 <!-- Dubbo Spr ...
- Spring Boot 整合 Elasticsearch,实现 function score query 权重分查询
摘要: 原创出处 www.bysocket.com 「泥瓦匠BYSocket 」欢迎转载,保留摘要,谢谢! 『 预见未来最好的方式就是亲手创造未来 – <史蒂夫·乔布斯传> 』 运行环境: ...
- Spring Boot整合Dubbo2.x,解决其中遇到的坑
Dubbo了解 a high-performance, java based open source RPC framework. Dubbo官网 源码 文档 快速知道用法 本地服务 Spring 配 ...
随机推荐
- eclipse安装心得和环境变量配置的体会
从昨天开始就开始安装eclipse,一开始觉得安装eclipse很简单,肯定就跟下个游戏差不多,但是打开官网之后发现下载的安装包不能用,经过搜索之后发现是因为下载源不对.改过下载源之后下载的安装包竟然 ...
- java:类集框架conllection接口list,set
类集中提供了以下几种接口: 1.单值操作接口:conllection,List,Set list和set是conllection接口的子接口 2.一对值的操作接口:Map 3.排序的操作接口:Sort ...
- 047:创建和映射ORM模型
创建ORM模型: ORM 模型一般都是放在 app 的 models.py 文件中.每个 app 都可以拥有自己的模型.并且如果这个模型想要映射到数据库中,那么这个 app 必须要放在 setting ...
- js设置定时器在规定的日期内替换掉页面
<script type="text/javascript"> window.onload=function(){ var myspan=document.getEle ...
- react native之封装离线缓存框架
请求数据=>本地有无缓存+缓存数据是否过期 =>可用 =>不可用 将代码封装成一个DataStore.js文件, 这里面主要提供:从本地获取数据,从网络获取数据,创建本地时间戳,请求 ...
- Mysql数据库表类型
MySQL的数据表类型很多,其中比较重要的是MyISAM,InnoDB这两种. 这两种类型各有优缺点,需要根据实际情况选择适合的,MySQL支持对不同的表设置不同的类型.下面做个对比: MyISA ...
- Vue中v-for配合使用Swiper插件问题
问题描述: 在一个页面中需要一个用swiper的轮播图,数据大概有40条,每一屏幕的swiper只显示其中的n条数据. 代码描述: <div id="app"> < ...
- 从Java 调用JavaScript
篇幅过长 下载资源链接https://www.slidestalk.com/s/java_javascript_5hl09w
- centos6最小化安装默认没有 NetworkManager服务
转载Centos6最小化安装中设置网卡默认启动 Centos 6.0版本提供了一个"最小化"(Minimal)安装的选项.这是一个非常好的改进,因为系统中再也不会存在那些不必要 ...
- tikz: keep in mind these
don't add % in title, xlabel, ylabel etc., use \%