Closed eyeqinglan closed 4 years ago
<dependencyManagement> <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-dependencies</artifactId> <version>2.0.3.RELEASE</version> <scope>import</scope> <type>pom</type> </dependency> </dependencies> </dependencyManagement> <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> <exclusions> <exclusion> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-logging</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-log4j2</artifactId> </dependency> <dependency> <groupId>com.fasterxml.jackson.dataformat</groupId> <artifactId>jackson-dataformat-yaml</artifactId> </dependency> <dependency> <groupId>com.alibaba.boot</groupId> <artifactId>dubbo-spring-boot-actuator</artifactId> <version>0.2.0</version> </dependency> <dependency> <groupId>com.alibaba</groupId> <artifactId>dubbo</artifactId> <version>2.6.2</version> <exclusions> <exclusion> <groupId>org.springframework</groupId> <artifactId>spring</artifactId> </exclusion> <exclusion> <groupId>javax.servlet</groupId> <artifactId>servlet-api</artifactId> </exclusion> <exclusion> <groupId>log4j</groupId> <artifactId>log4j</artifactId> </exclusion> </exclusions> </dependency> </dependencies>
@Autowired public ReferenceConfig<OrganizationService> dubboOrganizationService( ApplicationConfig application, RegistryConfig registry) { ReferenceConfig<OrganizationService> reference = new ReferenceConfig<>(); reference.setId("account.orgService"); reference.setApplication(application); reference.setInterface(OrganizationService.class); reference.setRegistry(registry); reference.setUrl(orgServiceUrl); return reference; }
@RestController @RequestMapping("/user") public class UserController extends BasicController { @Reference private OrganizationService organizationService; @GetMapping("/info") public String userInfo() { Organization organization = organizationService.get("test"); return organization.toString(); } }
请尝试在ServiceReferenceConfig使用@Bean而不是@Autowired。
猜测该服务没有被注册到容器中,导致远程调用失败。
Pls provider a demo to reproduce this problem.
problen description
maven pom.xml
ServiceReference Config
test controller