默认值@ProjectedPayload / ProjectingJackson2HttpMessageConverter
我在接口上使用@ProjectedPayload
将JSON请求主体绑定到我的接口的代理实例。 我的接口如下(在Kotlin中, val
只是转化为Java getter):
@ProjectedPayload interface ImportServer { val id: UUID? val name: String? }
现在,这里的id
是完全可选的,但是至少据我所知,我没有办法指定它。 如果我尝试访问id
属性,而不会出现在请求正文中,我将收到来自JsonPath的异常: com.jayway.jsonpath.PathNotFoundException: No results for path: $['id']
。 如果我可以配置JsonPath,我可以使用Option.DEFAULT_PATH_LEAF_TO_NULL
,对于不存在的元素,我会得到null
。 但是,我没有办法得到JsonPath配置,它发生在JsonProjectingMethodInterceptorFactory
里面。
有没有办法让我在这里指定一个默认值? 或者是有没有办法让我来检测是否存在id
没有访问id
属性的第一位?
这是一个错误,并已与DATACMNS-1145修复。 将与英特尔SR7和Boot 1.5.7传递。