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
具体的なエラー:
解決方法:
プロバイダコード:
消費者コード:
消費者の
原文住所:http://blog.liangxiaowu.com/#/detail/23
具体的なエラー:
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®ister.ip=192.168.1.103&side=consumer×tamp=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