dubbo
集成
<dependency>
<groupId>com.manatee.manatee-lowcode</groupId>
<artifactId>lowcode-dubbo-consumer</artifactId>
<version>${lowcode.version}</version>
</dependency>
Q&A
引入 dubbo 组件后启动项目失败
报错信息
xx.xx.NoUniqueBeanDefinitionException: No qualifying bean of type 'org.apache.dubbo.config.ApplicationConfig' available: expected single matching bean but found 2: manateeDubboApplicationConfig,org.apache.dubbo.config.ApplicationConfig#0
解决方式
将启动类注解 @ComponentScan
中的 excludeFilters
按如下配置即可
@SpringBootApplication
@EnableDubbo
@ComponentScan(basePackages = {"com.xxxx","com.xx.xxxx"}
,excludeFilters = @ComponentScan.Filter(type = FilterType.ASSIGNABLE_TYPE, classes = {DubboConsumerConfig.class})
)
public class DubboConsumerApplication {
public static void main(String[] args) {
SpringApplication.run(DubboConsumerApplication.class, args);
}
}
配置说明
配置项 | 说明 |
---|---|
interface名称 | 要调用的 interface 路径:com.xx.xx.IxxService |
方法名 | 要调用的方法名 |
版本号(version) | 服务的 version |
组(group) | 服务的 group |
附加信息 | 需配置的附加信息,如 dubbo.tag |
入参 | 要传给方法的参数,如: id = user.id; |
入参数据类型 | 方法参数的类型,如: id = "java.lang.Long"; |
结果对象名 | 默认为 outputData |
在返回中显示 | 是否输出到返回结果 |