springfox(swagger2) does not work with GsonHttpMessageConverterConfig

前端 未结 5 1883
耶瑟儿~
耶瑟儿~ 2020-12-08 17:42

What I am trying to build is a spring-boot (v1.2.3) application and expose my Rest API with SpringFox(swagger2) v2.0.0

my Swagger Spring config



        
5条回答
  •  轮回少年
    2020-12-08 18:27

    This is Oleg Majewski's solution for SpringFox + Gson problem translated to Kotlin:

    internal class SpringfoxJsonToGsonAdapter : JsonSerializer {
    
        override fun serialize(json: Json, type: Type, context: JsonSerializationContext): JsonElement
                = JsonParser().parse(json.value())
    
    }
    
    @Configuration
    open class GsonHttpMessageConverterConfig {
    
        @Bean
        open fun gsonHttpMessageConverter(): GsonHttpMessageConverter {
            val converter = GsonHttpMessageConverter()
            converter.gson = gson()
            return converter
        }
    
        private fun gson(): Gson = GsonBuilder()
                .registerTypeAdapter(Json::class.java, SpringfoxJsonToGsonAdapter())
                .create()
    
    }
    

提交回复
热议问题