Я создаю функцию уведомления в реальном времени, используя библиотеку пружинного кварца. Я создаю две службы, как показано ниже: 1) Кварц-служба: которая используется для установки расписания для уведомления в режиме реального времени. 2) задача-служба: которая используется для создания задачи и напоминания через кварцевый сервис.
Когда служба вызова вызывает кварцевый сервис через симулированного клиента, я не получаю никакого ответа. Но если я позвоню через Rest Template, это работает, найти.
На самом деле мы используем микросервисную архитектуру с пружинной загрузкой. При использовании шаблона отдыха нам нужно указать URL-адрес с жестким кодом, поэтому мы не можем реализовать концепцию ленты в этом случае, поэтому нам не интересно использовать шаблон отдыха.
Поэтому, пожалуйста, помогите мне, если кто-нибудь когда-нибудь столкнется с этой проблемой.
кварц-сервис:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-quartz</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
Контроллер покоя:
@RestController
@RequestMapping(value = "/quartz/taks", produces = "application/hal+json")
public class QuartzTaskController
{
@Autowired
private QuartzTaskServices quartzTaskServices;
@PostMapping("/reminder")
public ResponseEntity<Object> saveTaskReminder(@RequestBody Task task)
{
quartzTaskServices.saveTaskReminderScheduler(task);
return ResponseEntity.ok().build();
}
}
Task-Service
Зависимость:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-openfeign</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-ribbon</artifactId>
</dependency>
Feign Client:
@RibbonClient(name="quartz-services")
@FeignClient(name="quartz-services")
public interface QuartzProxy
{
@PostMapping("/quartz/taks/reminder")
public ResponseEntity<Object> saveTaskReminder(@RequestBody Task task);
}
Call Feign Client:
@Autowired
private QuartzProxy quartzProxy;
...
.....
......
quartzProxy.saveTaskReminder(task);