kotlin - 如何在 kotlin 客户端的 openapi-generator 中自定义 OffsetDateTime 序列化格式
问题描述
我正在尝试在 openapi-generator 中为 kotlin 客户端自定义OffsetDateTime序列化格式。对于使用 http okhttp3 库,它在 Spring Boot 上下文中工作。
我想为OffsetDateTime类发送具有ISO_INSTANT格式的api 请求,而不是我有ISO_OFFSET_DATE_TIME格式并从远程 api 得到错误。
这是生成器的配置:
openApiGenerate {
generatorName.set("kotlin")
inputSpec.set(spec)
outputDir.set(generatedSourcesDir)
apiPackage.set("importer.api")
invokerPackage.set("importer.invoker")
modelPackage.set("importer.model")
configOptions.set(mapOf(
"dateLibrary" to "java8",
"serializationLibrary" to "jackson",
"serializableModel" to "true",
"enumPropertyNaming" to "UPPERCASE",
"modelMutable" to "true"
))
}
这里的问题是在生成的请求类中我无法注释字段以指定格式。因此,我尝试为我的班级指定自定义序列化程序,但无法正常工作。令我困惑的是如何在生成的代码中实现对象映射器的检索:
package org.openapitools.client.infrastructure
import .....
object Serializer {
@JvmStatic
val jacksonObjectMapper: ObjectMapper = jacksonObjectMapper()
.registerModule(Jdk8Module())
.registerModule(JavaTimeModule())
.setSerializationInclusion(JsonInclude.Include.NON_ABSENT)
.configure(SerializationFeature.WRITE_DATES_AS_TIMESTAMPS, false)
}
由于它是静态方法,因此没有空间来自定义对象映射器参数。很可能我在这里错过了,任何帮助将不胜感激。
解决方案
推荐阅读
- ms-access - 访问:按来自不同来源的日期排序
- python - python中的快速排序算法实现
- reactjs - ReactJs 无限循环
- xamarin.forms - 在发布模式 xamarin 上具有退出代码 1 的 Java.exe
- python - Python:Django TypeError:object()不带参数
- python - 以与 Jupyter Notebook 相同的样式将 pandas 数据框呈现为 HTML
- python - 405 客户端错误:url 不允许使用方法:https://rinkeby.infura.io PYTHON
- node.js - 为什么查询不起作用的 FireStore?
- java - 递归嵌套目录中的多线程,同时删除它
- java - 如何使用 JOOQ Query Builder 使用使用常量值的 select 语句构建 Insert into