seata no available service 'null' found, please make sure registry config correct

摘要:
最近,在学习seata时,我报告了错误noavailableservice‘null‘found,pleasemakesregistryconfigcorrect。服务名称都在配置文件中,我不得不遵循源代码环境springcloudHoxton。SR3+弹簧靴2.2.5。释放+座椅1.1+nacos1.4座椅。程序包加载太慢。直接使用已编译的版本1.2-SNAPSH

最近学习seata的时候报了错误no available service 'null' found, please make sure registry config correct,服务名在配置文件中都有的,没办法只能跟源码了

环境springcloudHoxton.SR3+Springboot2.2.5.RELEASE+seata1.1+nacos1.4

seata包下载太慢了,直接使用的编译版本1.2-SNAPSHOT

本人遇到这个问题有两个原因

1.没有使用官网的配置,直接拿的别人的配置文件导入的

2.没有引入依赖引起

下面看看原因

报错的源码seata1.0

io.seata.core.rpc.netty.NettyClientChannelManager#reconnect

void reconnect(String transactionServiceGroup) {
        List<String> availList = null;
        try {
            availList = getAvailServerList(transactionServiceGroup);
        } catch (Exception e) {
            LOGGER.error("Failed to get available servers: {}", e.getMessage(), e);
            return;
        }
        if (CollectionUtils.isEmpty(availList)) {
            String serviceGroup = RegistryFactory.getInstance()
                                                 .getServiceGroup(transactionServiceGroup);
            LOGGER.error("no available service '{}' found, please make sure registry config correct", serviceGroup);
            return;
        }
        for (String serverAddress : availList) {
            try {
                acquireChannel(serverAddress);
            } catch (Exception e) {
                LOGGER.error("{} can not connect to {} cause:{}",FrameworkErrorCode.NetConnect.getErrCode(), serverAddress, e.getMessage(), e);
            }
        }
    }
io.seata.discovery.registry.RegistryService#getServiceGroup
String PREFIX_SERVICE_MAPPING = "vgroup_mapping.";
/**
* The constant PREFIX_SERVICE_ROOT.
*/
String PREFIX_SERVICE_ROOT = "service";
/**
* The constant CONFIG_SPLIT_CHAR.
*/
String CONFIG_SPLIT_CHAR = ".";
default String getServiceGroup(String key) {
Configuration config = ConfigurationFactory.getInstance();
return config.getConfig(PREFIX_SERVICE_ROOT + CONFIG_SPLIT_CHAR + PREFIX_SERVICE_MAPPING + key);
}

上面红色部分就是根源所在,1.1版本之后

vgroup_mapping改成vgroupMapping了
所以大家在导入的seata配置的时候直接上源码下面的script目录下去找配置文件修改好了导入,1.1之后之前的nacos-config.txt也去掉了nacos

seata no available service 'null' found, please make sure registry config correct第1张

nacos-config.sh在上面nacos目录中

所以大家如果使用1.1版本以上的seata组名记得用

vgroupMapping,1.0及之前的用vgroup_mapping,记得所有含有这个的都要一起改哦
另外一个原因就是你的模块没有引入spring-cloud-alibaba-seata依赖引起的

欢迎有兴趣的同学加入 513650703一起学习

免责声明:文章转载自《seata no available service 'null' found, please make sure registry config correct》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇Mac下更新node版本和用yarn安装依赖go 创建携程池,开启并发下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

RestTemplate请求使用方法

获取restTemplate对象 封装请求头 封装请求参数 发起请求 获取返回值 获取restTemplate对象 1 RestTemplate restTemplate=new RestTemplate(); 封装请求头 HttpHeaders requestHeaders = newHttpHeaders(); //添加session List&...

POI导出word

最近有一个项目需要用做导出word的功能,刚开始用的是poi,开始写的时候才发现poi对于word的支持真的是少的可怜,还是推荐大家用xml或者别的来做导出word,本次功能分两篇博客展现如果用需要用poi的可以看看这篇博客,欢迎补充。 替换word表格参数 动态生成行 根据word模板导出word public class WordUtil { /...

[Swift]扩展String类:Base64的编码和解码

★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★➤微信公众号:山青咏芝(shanqingyongzhi)➤博客园地址:山青咏芝(https://www.cnblogs.com/strengthen/)➤GitHub地址:https://github.com/strengthen/LeetCode➤原文地址:https://w...

java与json互相转换(解决日期问题)

JSON 即 JavaScript Object Natation,它是一种轻量级的数据交换格式,非常适合于服务器与 JavaScript 的交互。本文主要讲解下java和JSON之间的转换,特别是解决互相转换遇到日期问题的情况。 一、需要相关的jar包: json-lib-xxx.jar ezmorph-xxx.jar c...

ToString和Convert.ToString处理null值

http://www.cnblogs.com/qinge/p/5687806.html文章来源 1.Convert.ToString能处理字符串为null的情况。 测试代码如下: 1 2 3 4 5 6 static void Main(string[] args) {   string msg = null;   Console.W...

关于Intege.valueOf()的使用

原文链接:https://blog.csdn.net/weixin_37650458/article/details/85212730 1.Integer. valueOf()方法的作用     Integer. valueOf()可以将基本类型int转换为包装类型Integer,或者将String转换成Integer,String如果为Null或“”都会...