Здравствуйте, только начал изучать Spring. Есть проект в котором есть клиентский сервис, контроллер и dto(класс с информацией о клиентах). Мне нужно сделать сервис, который будет по расписанию обращаться к клиентскому сервису и получать информацию. Как мне наладить связь между ними? Через что мой сервис будет обращаться к тому?
Я пытаюсь использовать Resttemplate:
var rest = new Resttemplate ();
var response = restTemplate.getForObject("localhost/8081/API/v1, ClientsInfo.class)
И вот класс этот , который лежит в другом сервере не виден в моем(выделяется красным).
Никита, не путайте вопросы десериализации и вопросы интеграции.
Естественно, чтобы десереализовать ответ - ваше приложение должно знать в какой класс его десериализовать.
Вы можете либо на стороне клиента завести набор классов, соответстующих ответам, либо сделать какую-то общую библиотеку, которая будет подключена к клиенту и к серверу, и в которой будут содержаться контракты взаимодействия.
Dmitry Roo, я так понимаю мне нужно добавить зависимость класса от одного проекта в другой. Но файл pom мне не доступен в клиентском. Мне полностью проект добавлять в зависимость?
Dmitry Roo, хотел вынести класс в отдельный проект и добавить в зависимость к обоим, но к сожелению, мне не доступен pom файл клиентского сервера и сделать какую либо зависимость не представляется возможным.
Dmitry Roo, вот смотрите, мне надо реализовать feignclient так: я создаю сущность (класс с информацией о клиентах) такую же как на стороне, потом feignclient (делаю интерфейс и использую его метод getClients в сервисе с шедулером, а затем кидаю все это в контроллер, чтобы он ходил в интеграцию с другим сервером. Или я все же что то напутал?
в boot spring есть аннотация, которая работает как крон задача. Её нужно поставить перед методом, который она будет дергать по расписанию. А метод должен дёрнуть что-то, что будет дёргать другой сервис.