是否满足一下条件:
我的开发环境:虚拟机centerOS 6.9,虚拟机 jdk 1.7 ,maven 插件:tomcat 1.7,jdk 1.7
请保持:开发环境的版本,和运行环境的版本一致
a.虚拟机的防火墙是否关闭,报错的原因不一定是由防火墙引起的,通常在学习测试的情况下是关闭防火墙的。
关闭命令:service iptables stop,关闭开机防火墙自起:chkconfig iptables off,查看状态:service iptables status。
b.在本机 cmd命令窗口 中是否可以 ping 通虚拟机,ping 192.168.25.128
c.在虚拟机时正确安装zookeeper,其实不是安装,解压zookeeper-3.*.*.tar.gz就可以了,在conf文件中重命名zoo_simple.cfg为zoo.cfg,在配置文件中可以修改data=***的存放目录,创建 data文件夹 推荐在zookeeper的直接子目录下
d.springmvc.xml(消费方),给dubbo配上了controller,自己也要配上controller;applicationContext.xml(提供方),给dubbo配上了service接口的实现类,自己也要配上service接口的实现类
消费方的配置文件如下:<!--dubbo配置--> <dubbo:application name="dubbo-web"></dubbo:application> <dubbo:registry address="zookeeper://192.168.25.128:2181"></dubbo:registry> <dubbo:annotation package="com.codeyearn.demo.controller"></dubbo:annotation> <!--加上这一句代码--> <context:component-scan base-package="com.codeyearn.demo.controller"> </context:component-scan>
提供方的配置文件如下:
<!--dubbo配置--> <dubbo:application name="dubbo-service"></dubbo:application> <dubbo:registry address="zookeeper://192.168.25.128:2181"></dubbo:registry> <dubbo:annotation package="com.codeyearn.demo.service.impl"></dubbo:annotation> <!--加上这句代码--> <context:component-scan base-package="com.codeyearn.demo.service.impl"> </context:component-scan>
我的项目结构:
核心代码:
访问成功:
本项目的源码: