【发布时间】:2017-09-20 04:22:12
【问题描述】:
在 MapStruct 版本 1.1.0.Final 中,这是可能的......
@Mappings({
@Mapping(target = "transaction.process.details", expression = "java(MappingHelper.mapDetails(request))"),
//more mappings
})
Response requestToResponse(Request request);
这是可能的,因为mapDetails 方法(巧合?)生成到requestToResponse 方法中。这就是request 不为空的原因。
现在,由于 1.1.0.Final 不适用于 Lombok,我不得不升级到 1.2.0.CR2。在这个版本中,mapDetails 将被生成到一个单独的方法中,其中request 没有传递,所以request 现在在这个方法中为空,我得到一个带有表达式的 NPE。 (现在是requestToResponse的子子方法。)
是不是我误用了这个表达方式,它只是巧合,还是新版本有错误?如果没有错误,我该如何正确地将 request 实例传递给表达式?
【问题讨论】:
标签: mapstruct