搭建Dubbo 分布式 出现的问题
接口名所在classpath路径不一致 : 将所有接口类单独放一个项目中,打成jar包引入。
接口方法涉及到 自定义的实体类 未进行序列化 实现序列化接口
实体类的属性使用了 List、Map等未序列化的接口类 使用接口的实现类
Spring监听器未配置好
<context-param> <param-name>contextConfigLocation</param-name> <param-value>classpath:applicationContext-rtb.xml</param-value> </context-param> <listener> <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class> </listener>
xml中部分dubbo标签飘红
xmlns:dubbo="http://code.alibabatech.com/schema/dubbo" xsi:schemaLocation="http://code.alibabatech.com/schema/dubbo http://code.alibabatech.com/schema/dubbo/dubbo.xsd"
改用 apache的约束
xmlns:dubbo="http://dubbo.apache.org/schema/dubbo" xsi:schemaLocation=" http://dubbo.apache.org/schema/dubbo http://dubbo.apache.org/schema/dubbo/dubbo.xsd"
报错
Dubbo config was cleaned prematurely dubbo配置被过早清理
我的 spring版本低,dubbo版本高(与版本差异有关系)
dubbo的配置放在spring的配置文件中,不要放在springmvc配置文件中,(spring容器、springmvc容器、dubbo容器三者之间的关系)
xml配置文件 使用的是dubbo的注解扫描 annotation
<dubbo:annotation package="xxx.xxx"></dubbo:annotation>
改用 reference
<dubbo:reference interface="xxx.xxx.接口类名" id="指定id controller层通过spring注解@Autowired @Qualifier(’id‘)注入"/>