【发布时间】:2020-10-11 22:47:12
【问题描述】:
当我进入挂起函数时,上下文是存在的。这个函数是从一个也是挂起的控制器函数中调用的。
suspend fun search(searchRequest: String): String? {
val context = ReactiveSecurityContextHolder.getContext().map {
it
}.awaitFirstOrNull()
log.info("The context here at the search is $context")
return someJava.something();
}
只要我进入 java 代码,上下文就在 java 中消失了。如果我回调 kotlin,安全上下文仍然消失。
public String something() {
return someKotlin.something();
}
fun something(): String {
val context = ReactiveSecurityContextHolder.getContext().map {
it
}.awaitFirstOrNull()
log.info("The context here is always null. Why? $context")
}
知道如何解决这个问题吗?
【问题讨论】:
标签: java kotlin kotlin-coroutines suspend kotlin-java-interop