小编Dmi*_*iya的帖子

Mapstruct 问题:未知属性错误,但存在属性

我正在使用:

  • 弹簧引导 2.1.5.RELEASE
  • 映射结构 1.3.0.Final
  • 龙目岛 1.18.8

我正在尝试映射两个对象,Model 和 DTO:

  • DTO ClientDto - 从 nesux 存储库作为依赖项获取
  • 模特客户

在两个类中都有一个属性结算中心,但在编译时我收到一个错误(toDto 方法):

error: Unknown property "settlementCentre" in result type ru.rt.eip.boot.domain.ClientDto. Did you mean "null"?
Run Code Online (Sandbox Code Playgroud)

但是如果我直接在我的项目中创建类 ClientDto(而不是作为依赖项),编译就没有问题。

令人惊讶的是,但 toModel 方法工作正常,编译后我在生成的源代码中看到下一个:

@Override
Client toModel(ClientDto clientDto) {
    if ( clientDto == null ) {
        return null;
    }

    Client client = new Client();

    if ( clientDto.getSettlementCentre() != null ) {
        client.setSettlementCentre( settlementCentreDtoToSettlementCentre( clientDto.getSettlementCentre() ) );
    }
    else {
        client.setSettlementCentre( null );
    }
}
Run Code Online (Sandbox Code Playgroud)

我不知道如何解决这个映射问题。有人可以帮忙吗?

这是我的映射器:

@Mapper(
        componentModel …
Run Code Online (Sandbox Code Playgroud)

java lombok mapstruct

7
推荐指数
1
解决办法
9467
查看次数

标签 统计

java ×1

lombok ×1

mapstruct ×1