如何配置 micronaut 序列化以使用开放的 api 生成的模型?

How do I configure micronaut serialization to work with open api generated models?

问题描述 我有一个项目,我正在使用 micronaut 构建 RESTful api。响应正文中 returned 的模型是从开放的 api 规范(使用 gradle 插件)生成的。

但是,出于某种原因,micronaut 总是 return 将任何模型对象作为空 json 对象 {},即使它应该是填充对象。

存储库Link https://gitlab.com/connorbutch/open-api-micronaut-quarkus

输出示例

预计:

[
     {
           "id": 123
           "name": "Scruffy"
           "tag": "Chuck's pup"

     }
]

实际:[{}]

如何重现

我有想法 我很好奇的一些事情包括:

其他探索

我找到了答案。即使 class 是使用 @Introspected 编译的,graal vm(native-image cli)也不会查看那些 classes。为了包括这些,我最终包括了一个 class 指定内省这些 classes @Introspected(classes = { Pet.class, Error.class} )

如果有人感兴趣,我会 post 带有示例的 gitlab link