SpringBoot Dubbo 大坑之Caused by: java.lang.IllegalStateException: Failed to check the status of the se

SpringBoot Dubbo 大坑之Caused by: java.lang.IllegalStateException: Failed to check the status of the service com.wudner.service.OrderService. No provider available for the service

具体错误:
Caused by: java.lang.IllegalStateException: Failed to check the status of the service com.wudner.service.OrderService. No provider available for the service com.wudner.service.OrderService from the url zookeeper://192.168.1.103:2181/com.alibaba.dubbo.registry.RegistryService?application=springboot-user-service&dubbo=2.6.2&interface=com.wudner.service.OrderService&methods=getUserOrder&pid=12992&register.ip=192.168.1.103&side=consumer&timestamp=1593018601805 to the consumer 192.168.1.103 use dubbo version 2.6.2
	at com.alibaba.dubbo.config.ReferenceConfig.createProxy(ReferenceConfig.java:422) ~[dubbo-2.6.2.jar:2.6.2]
	at com.alibaba.dubbo.config.ReferenceConfig.init(ReferenceConfig.java:333) ~[dubbo-2.6.2.jar:2.6.2]
	at com.alibaba.dubbo.config.ReferenceConfig.get(ReferenceConfig.java:163) ~[dubbo-2.6.2.jar:2.6.2]
	at com.alibaba.dubbo.config.spring.ReferenceBean.getObject(ReferenceBean.java:66) ~[dubbo-2.6.2.jar:2.6.2]
	... 43 common frames omitted
解决方式:

提供者代码:

@Service(version = "1.0.0") // 注意定义的版本号
public class OrderServiceImpl implements OrderService {
     

    public Order getUserOrder(Integer id) {
     
        Order order = new Order();
        order.setUid(id);
        order.setOrderNo("202020202020100");
        order.setContent("产品订单信息");
        return order;
    }

}

消费者代码:

@Service(version = "1.0.0")
@Component
public class UserServiceImpl implements UserService {
     

	@Reference(version = "1.0.0") // 版本号
    //    @Reference
    OrderService orderService;

    public User selectUserById(Integer id) {
     
        Order userOrder = orderService.getUserOrder(id);
        User user = new User();
        user.setUid(id);
        user.setAge(1);
        user.setName("wudner");
        user.setEmail("[email protected]");
        user.setOrder(userOrder);

        return user;
    }
}

消费者的Reference注解的属性version需要对应提供者的@Service(version = "1.0.0")

原文地址:http://blog.liangxiaowu.com/#/detail/23

你可能感兴趣的:(Java,spring,boot,dubbo,spring,boot,java)