Я изучаю микросервис с помощью весеннего облака. Один поставщик услуг вроде этого:
@GetMapping(value = "/recommended")
public String readingList(){
return "Spring in Action (Manning), Cloud Native Java (O'Reilly), Learning Spring Boot (Packt)";
}
и один такой потребитель сервиса:
public String readingList() {
URI uri = URI.create("http://localhost:8090/recommended");
return this.restTemplate.getForObject(uri, String.class);
}
@GetMapping("/to-read")
public String readingList() {
return bookService.readingList();
}
затем я отправляю запрос "http: // localhost: 8080 / для чтения" через почтальона и возвращаю:
{
"timestamp": "2018-08-16T08:16:25.239+0000",
"status": 500,
"error": "Internal Server Error",
"message": "405 Method Not Allowed",
"path": "/to-read"
}
вот часть моего porm.xml
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.0.4.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<java.version>1.8</java.version>
<spring-cloud.version>Finchley.SR1</spring-cloud.version>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-hystrix</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
больше кода:
@RestController
@EnableCircuitBreaker
@SpringBootApplication
....
также: Вы аннотировали свой контроллер как RestController?





Stacktrace на стороне сервера?