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 配 ...
随机推荐
- java tomcat虚拟目录的深入了解
我们知道,Web网站中的内容(包括网页,图片,音频文件等)一般都存放在App的目录下.但随着网站内容的不断丰富,用户需要把不同层次的内容组织成网站的子目录.我们通常的做法是在网站主目录下新建子目录,并 ...
- Spring Boot整合tk.mybatis及pageHelper分页插件及mybatis逆向工程
Spring Boot整合druid数据源 1)引入依赖 <dependency> <groupId>com.alibaba</groupId> <artif ...
- 2019年8月12日~8月18日 第七周JAVA学习总结
本周主要完成了PTA代码编写的任务,将报告也完成了,但是由于同学聚会比较多所以JAVA的学习比较少,也没有学习统一建模语言.用在编程的时间平均每天5个小时,用在JAVA学习上平均每天1个小时,用在解决 ...
- angularJS拖动marker时popup一直显示
$scope.$on('leafletDirectiveMarker.drag', function(event, arg) { arg.leafletObject.openPopup(); });
- python frozenset集合(17)
在前一篇文章中我们对 python set集合 做了详细的讲解,而本文讲解的 frozenset集合 其实和set集合类似!区别在于frozenset集合不能修改/添加/删除,其他功能和set集合一样 ...
- linux运维、架构之路-redis
一.redis介绍 Redis是一个开源,高级的键值存储和一个适用的解决方案,用于构建高性能,可扩展的Web应用程序. Redis属于非关系型数据库和Memcached类似,redis也是一个key- ...
- Mac升级系统后 Pod Install报错-不能用 解决办法
brew reinstall cocoapods brew install ruby brew link --overwrite cocoapods 最近将Mac OS升级到10.15.1 ,再回来初 ...
- Xcode 代码注释
/** * 生成二维码 * * @param data 二维码数据 * @param size 二维码大小 * @param color 二维码颜色 * @param backgroundColor ...
- 事物 @Transactional
转载:http://www.cnblogs.com/kristain/articles/2038397.html 一.什么是事务 事务是访问数据库的一个操作序列,数据库应用系统通过事务集来完成对数据库 ...
- VS2019界面透明、主题修改和导出设置
目录 安装插件Color Theme Editor for Visual Studio 2019和ClaudiIDE 导入主题 背景修改 效果预览 导出设置遇到错误924 其他帮助文档 我自己用的主题 ...