Сообщество разработчиков Java Scala Kotlin Groovy Clojure Чат для нач-их: @javastart Наш канал: @proJVM Вакансии: @jvmjobs @jvmjobschat ⚠️ Оффтоп -> @flood ❌Переход на личности ❌Троллинг ❌Реклама ❌HH (вакансии) ❌Варез
Ты можешь и любой эксепшн заворачивать в typed error с логированием
Читать полностью…На самом деле норм тема, но требуется перестройка мозга на новую парадигму
Читать полностью…Optional - for handling nullable context
А другие типы есть для хендлинга другого контекста.
Mono, Flux, CompletableFuture, Deffered, (JavaScript's Promise) - for handling async context.
Result, Either - to handle success or failure contexts. Used to represent success or failure without using exceptions,
.....
тогда проще прибегнуть к совету, который я давал человеку выше
Читать полностью…но чтобы его триггернуть, тогда надо делать типо:
return when (val result = userService.findUser(id)) {
is Result.Success -> result.value
is Result.Error -> throw DomainException(result.error)
}
Нет. Нужно с is present использовать, тогда все норм будет
Читать полностью…короче, на фулл тайпед я бы не перешел, но подумаю насчет контейнеров
Читать полностью…В случае typed errors ошибки обрабатываются по-хорошему не в @RestControllerAdvice,
а в своем компоненте, который инжектишь в контроллеры.
Никакого стактрейса
И все
в этом случае думаю стоит оставлять выкидывание эксепшенов и обработку в @RestControllerAdvice
Читать полностью…