在maven项目中使用dubbo和zookpper框架的时候出现下面的这个异常
那么首先你需要去看下你的maven项目中引用的zookpperjar包和服务器上面安装的zookpper的版本是否相同,例如项目的jar包是3.4.6的话那么服务器上面安装的zookpper版本也需要是3.4.6版本
版本没问题的哈那么就需要去看下你的配置文件是否正确配置:
service层的配置文件applicationContext-service.xml的配置(只给出dubbo的相关的配置):
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:context="http://www.springframework.org/schema/context"
xmlns:p="http://www.springframework.org/schema/p"
xmlns:aop="http://www.springframework.org/schema/aop"
xmlns:tx="http://www.springframework.org/schema/tx"
xmlns:dubbo="http://code.alibabatech.com/schema/dubbo"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-4.2.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-4.2.xsd
http://www.springframework.org/schema/aop
http://www.springframework.org/schema/aop/spring-aop-4.2.xsd
http://www.springframework.org/schema/tx
http://www.springframework.org/schema/tx/spring-tx-4.2.xsd
http://code.alibabatech.com/schema/dubbo
http://code.alibabatech.com/schema/dubbo/dubbo.xsd
http://www.springframework.org/schema/util
http://www.springframework.org/schema/util/spring-util-4.2.xsd">
<!-- 下面这些是dubbo的配置-->
<!-- 使用dubbo发布服务 -->
<!-- 提供方应用信息,用于计算依赖关系 -->
<dubbo:application name="taotao-manager" />
<!-- 使用zookeeper注册中心暴露服务地址,即zookeeper的所在服务器ip地址和端口号 根据你的ip设置-->
<dubbo:registry address="zookeeper://192.168.13.128:2181"/>
<!-- 用dubbo协议在20880端口暴露服务 -->
<dubbo:protocol name="dubbo" port="20880" />
<!-- 声明需要暴露的服务接口,这个 -->
<dubbo:service interface="com.taotao.service.ItemService" ref="itemServiceImpl" timeout="300000"/>
</beans>
springmvc中的配置(只给出dubbo的相关的配置):
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:p="http://www.springframework.org/schema/p"
xmlns:context="http://www.springframework.org/schema/context"
xmlns:dubbo="http://code.alibabatech.com/schema/dubbo"
xmlns:mvc="http://www.springframework.org/schema/mvc"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-4.2.xsd
http://code.alibabatech.com/schema/dubbo
http://code.alibabatech.com/schema/dubbo/dubbo.xsd
http://www.springframework.org/schema/mvc
http://www.springframework.org/schema/mvc/spring-mvc-4.2.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-4.2.xsd">
<!--下面是dubbo相关的配置-->
<!-- 引用dubbo服务 -->
<dubbo:application name="taotao-manager-web"/>
<dubbo:registry address="zookeeper://192.168.13.128:2181"/>
<dubbo:reference interface="com.taotao.service.ItemService" id="itemService" />
</beans>
这两个配置文件没错的的话那么就看下zookpper的配置文件zoo.cfg配置中的端口是否跟上面配置的端口一样:clientPort=2181
都没问题的话那么就需要设置下防火墙了:linux默认的话是拦截端口2181的,所以需要关闭对2181端口的拦截,如下设置:
在linux命令行分别输入命令:
/sbin/iptables -I -INPUT -p tcp --dport 2181 -j ACCEPT
/etc/rc.d/init.d/iptables save
防火墙也设置了也还是出现异常的话那么就只能看下项目的jdk版本是否是1.8了是的话改成1.7的试试