Size: a a a

2020 October 29

АБ

Артём Бояршинов... in pro.jvm
Pavel Avershin
а что тебе мешает сделать ?
 private MyFieldDTO account;
private MyFieldDTO addInfo;
Потому что это стремно)
источник

АБ

Артём Бояршинов... in pro.jvm
Хотя это самый простой вариант, возможно так и сделаю
источник

MG

Maxim Grankin in pro.jvm
Артём Бояршинов
Хотя это самый простой вариант, возможно так и сделаю
class Kek<T> {
private T fields;

и тут продолжаешь веселье
}

какой-то контроллер
public Kek<MyPojo> kek() {
return Kek;
}
источник

АБ

Артём Бояршинов... in pro.jvm
Loljeene
Почему не написать кастомный  сериалайзер/десериалайзер, если очень хочется?
Можно. Но я думал, что все уже написано за меня, поэтому и обратился сюда
источник

MG

Maxim Grankin in pro.jvm
кажется так сработает
источник

L

Loljeene in pro.jvm
Артём Бояршинов
Можно. Но я думал, что все уже написано за меня, поэтому и обратился сюда
А ты только в одну сторону хочешь? Сериализовать?
источник

DC

Denis Chikanov in pro.jvm
Артём Бояршинов
Потому что это стремно)
Нет, это не стрёмно
источник

АБ

Артём Бояршинов... in pro.jvm
Maxim Grankin
кажется так сработает
Сработает. Но это как раз то, что мне не хотелось бы писать.
При добавлении в оригинальный POJO новых полей придется дописывать еще и код в конвертере из нормальных POJO в этот кривой DTO.
Если бы была библиотека или код, основанный на рефлексии, при изменениях ничего бы делать не пришлось. Код стал бы устойчив к изменениям
источник

MG

Maxim Grankin in pro.jvm
да кажется не придется, это вроде бы общая оберточка, которая сможет любой твой JSON обернуть в fields {

}
источник

АБ

Артём Бояршинов... in pro.jvm
Denis Chikanov
Нет, это не стрёмно
Мой ответ выше актуален и для этого комментария
источник

A

Artjom Kalita in pro.jvm
Maxim Grankin
class Kek<T> {
private T fields;

и тут продолжаешь веселье
}

какой-то контроллер
public Kek<MyPojo> kek() {
return Kek;
}
вот это вот выглядит стремно
источник

MG

Maxim Grankin in pro.jvm
кек
источник

D𝔇

Dmitry 𝔇𝔪𝔦𝔱𝔯𝔶... in pro.jvm
Артём Бояршинов
Выше объяснил, почему Jackson не подходит
Дописывай просто свой сериализатор в джексон, это несложно
источник

D𝔇

Dmitry 𝔇𝔪𝔦𝔱𝔯𝔶... in pro.jvm
Торопился и потерял слово :)
источник

A

Artjom Kalita in pro.jvm
Dmitry 𝔇𝔪𝔦𝔱𝔯𝔶
Торопился и потерял слово :)
свой джаксон тоже написать можно, а что почему-бы и нет :)
источник

ZM

ZLoyer Matveev in pro.jvm
Артём Бояршинов
Заводить на каждое поле в POJO свой класс, в котором прописывать тип и название поля - звучит отстойно.
https://t.me/scala_ru/153946

статическая типизация, которую мы заслужили
источник

А

Артём Курилко... in pro.jvm
Всем привет, как можно в spring cloud gateway вернуть ResponseEntity? Мне это нужно чтобы изменить формат ошибки. Наример таким способом

return ResponseEntity<>("Forbidden", HttpStatus.FORBIDDEN);
Я получу кастомизированное исключение:
Forbidden


Но если просто кину исключение
throw new ForbiddenException("");
Тогда получу стандартный вид ошибки:
{
   "timestamp": "2020-10-29T07:27:35.222+00:00",
   "path": "/",
   "status": 403,
   "error": "Forbidden",
   "message": null,
   "requestId": "7eeb5c3d"
}
источник

АБ

Артём Бояршинов... in pro.jvm
ZLoyer Matveev
https://t.me/scala_ru/153946

статическая типизация, которую мы заслужили
😅
источник

VL

Vladimir Lykov in pro.jvm
Артём Курилко
Всем привет, как можно в spring cloud gateway вернуть ResponseEntity? Мне это нужно чтобы изменить формат ошибки. Наример таким способом

return ResponseEntity<>("Forbidden", HttpStatus.FORBIDDEN);
Я получу кастомизированное исключение:
Forbidden


Но если просто кину исключение
throw new ForbiddenException("");
Тогда получу стандартный вид ошибки:
{
   "timestamp": "2020-10-29T07:27:35.222+00:00",
   "path": "/",
   "status": 403,
   "error": "Forbidden",
   "message": null,
   "requestId": "7eeb5c3d"
}
Response позволяет билдить ответ
источник

А

Артём Курилко... in pro.jvm
Vladimir Lykov
Response позволяет билдить ответ
можешь сказать как именно. Допустим глобальный фильтр имеет возвращаемый тип Mono<Void>, как можно вернуть responseentity?
источник