Size: a a a

2018 August 06

SZ

Sergey Zolotov in Kotlin JVM
или так дело не пойдет?
источник

RI

Ruslan Ibragimov in Kotlin JVM
Я ровно так и живу
источник

I

Igor in Kotlin JVM
Sergey Zolotov
вот думаю, на сколько окей жить с 2я тредпулами. common pool + cached(для всяких блокирующих jdbc). и все вопросы параллельного выполнения решать только корутинами без каких-либо примитивов с синхронайзами
> для всяких блокирующих jdbc
Шел 2018, а jdbc до сих пор синхронный 😱
источник

SZ

Sergey Zolotov in Kotlin JVM
увы
источник

SZ

Sergey Zolotov in Kotlin JVM
ну в целом для jdbc сделать пул корутин на N штук поверх cached и гонять так, от 10 лишних потоков никто не умрет
источник

SZ

Sergey Zolotov in Kotlin JVM
еще всякие SDK и псевдо асинхронные штуки типа okhttp, которые под копотом блокируют и в слипы уходят
источник

I

Igor in Kotlin JVM
Может не юзать jdbc, есть же отдельные асинхронные коннекторы к тому же постгресу
источник

SZ

Sergey Zolotov in Kotlin JVM
там в любом случае нужно ограничивать кол-во желающих сделать запросик в базу в единицу времени
источник
2018 August 11

V

Viktor in Kotlin JVM
подскажите пожалуйста по JWT авторизации
делал все по туториалам и семплам, токен генерируется валидный, но при попытке запроса с этим токеном получаю 401

install(Authentication) {
       val audience =
".audience from properties"
       val realm =
".realm from properties"
       jwt("jwt") {
           verifier(JWT
       .require(Algorithm.HMAC512(JWT_SECRET))
       .withAudience(audience)
       .build())
           this.realm = realm
           validate {
               when{
                   it.payload.audience.contains(audience) -> JWTPrincipal(it.payload)
                   else -> null
               }
           }
       }
   }


authenticate("jwt") {
           get("/") {
               val userId = call.authentication.principal<JWTPrincipal>()?.payload?.getClaim("id")
источник

BP

Bogdan Panchenko in Kotlin JVM
Viktor
подскажите пожалуйста по JWT авторизации
делал все по туториалам и семплам, токен генерируется валидный, но при попытке запроса с этим токеном получаю 401

install(Authentication) {
       val audience =
".audience from properties"
       val realm =
".realm from properties"
       jwt("jwt") {
           verifier(JWT
       .require(Algorithm.HMAC512(JWT_SECRET))
       .withAudience(audience)
       .build())
           this.realm = realm
           validate {
               when{
                   it.payload.audience.contains(audience) -> JWTPrincipal(it.payload)
                   else -> null
               }
           }
       }
   }


authenticate("jwt") {
           get("/") {
               val userId = call.authentication.principal<JWTPrincipal>()?.payload?.getClaim("id")
Почитать про коды http ( просто совет)
источник

V

Viktor in Kotlin JVM
Bogdan Panchenko
Почитать про коды http ( просто совет)
я понимаю что 401 это unauthorized:)
источник

V

Viktor in Kotlin JVM
если  я правильно понимаю, валидация токена проходит в ApplicationCall::validate и запрос считается авторизованным если вернулся не нулл
источник
2018 August 12

MR

Max Railian in Kotlin JVM
Итак, господа, внимание квест
1) data class
2) var currentPage:Int = 1
Внимание вопрос: какого чёрта она 0?😕
источник

AS

Andrey Sidorenko in Kotlin JVM
data class (var currentPage: Int = 1)
?
Полагаю, что вариант проверенный, но... Может где-то указывается значение не по умолчанию?
источник

AS

Andrey Sidorenko in Kotlin JVM
Если нет - то думаю стоит скинуть какой-нибудь минимально компилируемый код с похожим поведением

Если же не получается - пройтись по стеку вызовов, должно что-то найтись
источник

IL

Ivan Lopatin in Kotlin JVM
Даже с val может быть любое значение, если класс JPA-сущность и создаётся через empty-конструктор
источник

BP

Bogdan Panchenko in Kotlin JVM
Ivan Lopatin
Даже с val может быть любое значение, если класс JPA-сущность и создаётся через empty-конструктор
Но ведь в дата классе нет empty конструктора, если его руками не создать
источник

IL

Ivan Lopatin in Kotlin JVM
Bogdan Panchenko
Но ведь в дата классе нет empty конструктора, если его руками не создать
Если подключить JPA-плагин для компилятора, он будет создан автоматически
источник

BP

Bogdan Panchenko in Kotlin JVM
Ivan Lopatin
Если подключить JPA-плагин для компилятора, он будет создан автоматически
Кодогенерация и до котлина добралась о боги
источник

IL

Ivan Lopatin in Kotlin JVM
Bogdan Panchenko
Кодогенерация и до котлина добралась о боги
Можно и руками создавать пустой конструктор, но выглядит жутко. Все-таки Котлин силен совместимостью с Джавой и популярными фреймворками.
источник