Size: a a a

2020 May 10

DD

Dmitry Dmitry in pro.jvm
Лол у меня календарь другой каклй-тл видимо
источник

C

Constantine in pro.jvm
Alexander Komarov
а разве завтра рабочий день?
☹️я работаю безз выходных
источник

KA

Kira Alche in pro.jvm
Кто-нибудь умеет в Micronaut?
Пытаюсь разобраться можно ли в нём написать апи в одном классе и затем использовать его  как для контроллеров, так и для клиентов.
Из официальной документации выглядит будто нужно дважды прописывать маршруты, например:
@Controller("/route") и @Client("http://myurl.com/route")
Что выглядит не особо удобно.
источник

ДЧ

Денис Чиканов... in pro.jvm
Kira Alche
Кто-нибудь умеет в Micronaut?
Пытаюсь разобраться можно ли в нём написать апи в одном классе и затем использовать его  как для контроллеров, так и для клиентов.
Из официальной документации выглядит будто нужно дважды прописывать маршруты, например:
@Controller("/route") и @Client("http://myurl.com/route")
Что выглядит не особо удобно.
В микронавте такую штуку не встретил, она есть в Lagom, но для джавы это прям сомнительное удовольствие будет
источник

KA

Kira Alche in pro.jvm
В jax-rs это из коробки, потом в cxf и feign удобно использовать
источник

s

saksonov 👀 in pro.jvm
Kira Alche
В jax-rs это из коробки, потом в cxf и feign удобно использовать
ну не прям из коробки, jersey-proxy-client это все таки extension
источник

t

terancet in pro.jvm
Kira Alche
Кто-нибудь умеет в Micronaut?
Пытаюсь разобраться можно ли в нём написать апи в одном классе и затем использовать его  как для контроллеров, так и для клиентов.
Из официальной документации выглядит будто нужно дважды прописывать маршруты, например:
@Controller("/route") и @Client("http://myurl.com/route")
Что выглядит не особо удобно.
Можно попробовать взять Open API plugin для grade или мейвен
источник

D

Dima in pro.jvm
Kira Alche
Кто-нибудь умеет в Micronaut?
Пытаюсь разобраться можно ли в нём написать апи в одном классе и затем использовать его  как для контроллеров, так и для клиентов.
Из официальной документации выглядит будто нужно дважды прописывать маршруты, например:
@Controller("/route") и @Client("http://myurl.com/route")
Что выглядит не особо удобно.
в спринге на раз делается такое кстати, если @RequestMapping в интерфейсе написать
источник

D

Dima in pro.jvm
Kira Alche
Кто-нибудь умеет в Micronaut?
Пытаюсь разобраться можно ли в нём написать апи в одном классе и затем использовать его  как для контроллеров, так и для клиентов.
Из официальной документации выглядит будто нужно дважды прописывать маршруты, например:
@Controller("/route") и @Client("http://myurl.com/route")
Что выглядит не особо удобно.
источник

D

Dima in pro.jvm
The value you pass to the Client annotation can be one of the following:

A absolute URI. Example https://api.twitter.com/1.1

A relative URI, in which case the server targeted will be the current server (useful for testing)

A service identifier. See the section on Service Discovery for more information on this topic.
источник

D

Dima in pro.jvm
Получается достаточно создать какой-нибудь TwitterResource c константой PATH, в TwitterCOntroller этот PATH использовать в @Controller, а в TwitterClient использовать HOST+PATH в @Client
источник

D

Dima in pro.jvm
либо посмотреть в сторону:

A service identifier. See the section on Service Discovery for more information on this topic.
источник

KA

Kira Alche in pro.jvm
Dima
Получается достаточно создать какой-нибудь TwitterResource c константой PATH, в TwitterCOntroller этот PATH использовать в @Controller, а в TwitterClient использовать HOST+PATH в @Client
Проблема в том что приходится дважды писать Path, вопрос в том как этого избежать
источник

D

Dima in pro.jvm
Kira Alche
Проблема в том что приходится дважды писать Path, вопрос в том как этого избежать
тогда не юзать PATH над классом, а только конкретно в роутах
источник

D

Dima in pro.jvm
а в клиенте использовать service id
источник

D

Dima in pro.jvm
ну или базовый урл какой-то
источник

D

Dima in pro.jvm
public interface TwitterResouce {

   @Get(«/tweets/{id}»)
   Single<Tweet> findById(String id);
}

@Client(«https://api.twitter.com/1.1»)
public interface TwitterClient extends TwitterResource {

   Single<Tweet> findById(String id);
}

@Controller(«/api/v1»)
public class TwitterController implements TwitterResource {

   @Override
   Single<Tweet> findById(String id) {..};
}


@Orkig вот псевдокод, но разве что-то подобное не получилось у тебя?
источник

KA

Kira Alche in pro.jvm
Привык писать общий path в интерфейсах над классом, про такой хак не успел подумать
источник
2020 May 11

D

Dim in pro.jvm
коллеги, есть подвижки по моему исходнику?
источник

C

Constantine in pro.jvm
Dim
коллеги, есть подвижки по моему исходнику?
wat?
источник