修复dubbo注册中心警告bug

原创 2017年03月01日 16:34:04

1.dubbo注册中心服务提供者界面显示警告,点击提示不同服务名注册了相同服务,

这是界面显示逻辑bug,源码文件位置:/dubbo-admin/src/main/webapp/WEB-INF/templates/governance/screen/providers/index.vm

部分代码如下:

#set($providerApplication = "")
#foreach($provider in $providers)
<tr>
	<td><input type="checkbox" name="ids" value="$provider.id" /></td>
	<td><a href="providers/$provider.id">#if($address)$tool.getSimpleName($provider.service)#else$provider.address#end</a></td>
	<td>$tool.getProviderWeight($provider)</td>
	<td>#if($provider.dynamic)<font color="green">$i18n.get("dynamic")</font>#else<font color="blue">$i18n.get("static")</font>#end</td>
	<td>#if($tool.isProviderEnabled($provider))<font color="green">$i18n.get("enabled")</font>#else<font color="red">$i18n.get("disabled")</font>#end</td>
	<td>
		#set($errorLevel = "ok")
		#set($errorMessage = "")
		
		#if ($providerApplication == "")
			#set($providerApplication = $provider.application)
		#end
		
        #if($providerApplication != $provider.application)
        	#if ($errorLevel != "error") #set($errorLevel = "warn") #end
        	#set($errorMessage = "$errorMessage<br>$i18n.get('warn'): $i18n.get('CheckProviderApplicationDifferent', $providerApplication, $provider.application)")
        #end
        #if($provider.address.startsWith("127.") || $provider.address.startsWith("localhost:") || $provider.address.startsWith("0.0.0.0:"))

当判断providerApplication的值和provider.application的值不相同时就给出警告。就成为只要应用名和第一个遍历出来的不一样就加警告。而我们想要的警告是不同应用发布了相同的服务时给出警告。修改后的代码如下:

#foreach($provider in $providers)
<tr>
	<td><input type="checkbox" name="ids" value="$provider.id" /></td>
	<td><a href="providers/$provider.id">#if($address)$tool.getSimpleName($provider.service)#else$provider.address#end</a></td>
	<td>$tool.getProviderWeight($provider)</td>
	<td>#if($provider.dynamic)<font color="green">$i18n.get("dynamic")</font>#else<font color="blue">$i18n.get("static")</font>#end</td>
	<td>#if($tool.isProviderEnabled($provider))<font color="green">$i18n.get("enabled")</font>#else<font color="red">$i18n.get("disabled")</font>#end</td>
	<td>
		#set($errorLevel = "ok")
		#set($errorMessage = "")
		
		#foreach($patchProvider in $providers)
			#if ($patchProvider.application != $provider.application)
				#if ($provider.service == $patchProvider.service)
					#if ($errorLevel != "error") #set($errorLevel = "warn") #end
					#set($errorMessage = "$errorMessage<br>$i18n.get('warn'): $i18n.get('CheckProviderApplicationDifferent', $patchProvider.application, $provider.application)")
					#break
				#end
			#end
		#end
        
        #if($provider.address.startsWith("127.") || $provider.address.startsWith("localhost:") || $provider.address.startsWith("0.0.0.0:"))

相关文章推荐

springMVC整合dubbo问题及解决方法

1. 注解方式,提供者正常,但消费者获取不到对象,提示空指针;测试过程中发现service必须声明为static才可以正常使用。 原因分析:与注解顺序有关 解决方法:指定springMVC与dubbo...
  • dou612
  • dou612
  • 2015年12月03日 17:39
  • 4145

解决dubbo注册zookepper服务IP乱入问题的三种方式

最近做一个项目引入了dubbo+zookepper的分布式服务治理框架。在应用的发布的时候出现一个怪问题。zookepper服务是起在开发服务器192.168.23.180上。本机起应用服务提供者注册...
  • fullbug
  • fullbug
  • 2016年10月05日 17:04
  • 10477

【dubbo】dubbo服务注册三种方式

dubbo官方提供了三种注册方式。分别是: 1、利用main方法进行服务注册 2、利用tomcat容器 3、利用dubbo官方提提供的com.alibaba.dubbo.container.Main方...

springMVC整合dubbo问题及解决方法

1. 注解方式,提供者正常,但消费者获取不到对象,提示空指针;测试过程中发现service必须声明为static才可以正常使用。 原因分析:与注解顺序有关 解决方法:指定springMVC与dubbo...
  • dou612
  • dou612
  • 2015年12月03日 17:39
  • 4145

echarts图表导出excel

根据传入的参数生成相应的图形     ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 2...

Dubbo zookeeper注册中心文档

  • 2016年07月27日 15:21
  • 67KB
  • 下载

dubbo学习笔记(1)-注册中心和管理平台部署

一 , dubbo注册中心安装 这里用到的是zookeeper,当然还有其他的方式,只是我自己也还未研究,有兴趣的话可以自己找资料看看 第一步,去zookeeper官网下载 , 地址是 http://...

Dubbo之旅--扩展注册中心

在上篇文章中我们介绍了关于协议的扩展,并了解扩展它所需要的需求.本篇主要是对注册中心的扩展进行着重的探索.         同样的问题,为什么我们需要去扩展注册中心的?主要有以下三个需求....

2016年工作中遇到的问题41-50:Dubbo注册中心奇葩问题,wifi热点坑了

wifi热点启动了,但是没有正常连网,却占了1个ipv4的地址。 dubbo恰好又优先使用了这个ip地址,最终坑了! 2016年7月13日...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:修复dubbo注册中心警告bug
举报原因:
原因补充:

(最多只允许输入30个字)