我有一个用于其他服务的外部http客户端,我已经将其导入到我的micronaut应用程序中,但收到一个错误,该错误指出:
原因:io.Micronaut.Context.Exceptions.NoSuchBeanException:不存在类型为[xxx.files.client.Micronaut.filesclient]的bean。确保bean没有被bean要求禁用(为'io.micronaut.context.condition'启用跟踪日志以检查),如果bean被启用,则确保类被声明为bean并且注释处理被启用(对于Java和Kotlin,'micronaut-inject-'依赖项应该被配置为注释处理器)。
我已经在应用启动时添加了这些类:
object TransformerApplication {
@JvmStatic
fun main(args: Array<String>) {
Micronaut.build()
.packages(
"xxx.transformer",
"xxx.files.client.micronaut"
)
.mainClass(TransformerApplication.javaClass)
.start()
}
}
但在创建时:
@KafkaListener("transformer-group")
class EventsConsumerImpl(private val xlsTransformer: XlsTransformer,
private val filesClient: FilesClient,
private val workspacesClient: WorkspacesClient) : EventsConsumer {
...
}
我的HTTP客户端:
@io.micronaut.http.client.annotation.Client("\${files.url}")
interface FilesClient {
companion object {
const val FILES_TOKEN_KEY = "FILES"
}
@FilesTokenVerification
@Get("\${files.url}/{fileId}")
fun getFile(@PathVariable fileId: String): ByteArray
@FilesTokenVerification
@Patch("\${files.url}/{fileId}/info")
fun updateFileStatus(@PathVariable fileId: String, @Body metadata: Metadata): Metadata
@FilesTokenVerification
@Get("\${files.url}/{fileId}/info")
fun getFileMetadata(@PathVariable fileId: String): Metadata
}```
Can someone explain to me what I'm doing wrong?
我正在发送一个请求到一个服务器,它给了我一个200,没有身体(完全可以接受),但是我无法解决如何配置micronaut注释来处理这个问题。无论我尝试什么,它都试图将空响应解码为JSON(至少我认为这是它正在做的,因为它给出了一个意想不到的错误,而不是当身体出错时得到的正常杰克逊错误)。我在微型文档中找不到任何关于如何做到这一点的东西。
我试图为Spring Cloud OpenFeign提供CloseableHttpClient。Spring Cloud Open Faign Documentation表示它支持CloeableHttpClient。Spring文档没有给出任何实际替换HTTP客户端的例子。 基本上,我将SSLContext提供给HTTP客户端,我想假装使用这个SSLContext加载的客户端。如何将这个Clos
我的应用程序基于Micronaut和GraalVM(Java 11),并对: 当我使用此DockerFile构建应用程序的docker映像时: 在我当地的环境里一切都正常。但当我将映像推送到Google Cloud Repository,将其部署到Cloud Run,并尝试访问endpoint时,容器会崩溃,因为503服务不可用。 日志中的错误是“请求失败,因为到实例的HTTP连接有一个错误”。启
@Factory公共类MyFactory{ } 用于检查详细输出##的简单测试案例 picocli.CommandLine$InitializationException:无法实例化类Com.UtilityCommand:IO.Micronaut.Context.Exceptions.DependencyInjectionException:无法为类Com.UtilityCommand的字段[so
我有一个micronaut数据应用程序,对于复制操作,我需要使用相同的JPA存储库来访问多个数据源。我想将它们注入不同的变量,例如和。数据源在带有默认名称和目标名称。如果我用声明一个存储库变量,它将被初始化以访问默认数据源。 问题是,如何声明注入的存储库变量,以便它访问目标数据源?我可以声明或的目标注入,如下所示。但这两种注释都不会对存储库变量或参数产生影响。
在一节中,引入了接口,允许在请求中注入头,但必须返回同步响应。我们不能使用,这正是我的情况所需要的,因为我需要在头中添加一个令牌,而这个令牌是由返回的另一个restendpoint的请求检索的。 我如何在新的实现中实现这一点?如果不可能,有没有解决办法?