小编Lis*_*iso的帖子

使用 Mapstruct 从 Java POJO 到 Protobuf (proto3) 的 Map List<String>

我正在尝试将一些 POJO 从 Java 映射到 Protobuf (proto3)。其中一些包含列表。虽然使用 POJO 映射列表(例如 List)没有问题,但我收到了 UnsupportedOperationException。

示例List<Product>(这可以正常工作):

ProductProtobuf.Builder map(Product product);

@Mapping(target = "productsList", source = "products")
ResponseProtobuf.Builder map(Response response);
Run Code Online (Sandbox Code Playgroud)

示例List<String>(这不起作用):

@Mapping(target = "usersList", source = "users")
ResponseProtobuf.Builder map(Response response);
Run Code Online (Sandbox Code Playgroud)

另外,我有一些用于构建器的映射器:

public ResponseProtobuf.Builder responseBuilder() {
    return ResponseProtobuf.newBuilder();
}

public ProductProtobuf build(ProductProtobuf.Builder builder) {
    return builder.build();
}
Run Code Online (Sandbox Code Playgroud)

java protocol-buffers mapstruct proto3 protobuf-java

5
推荐指数
1
解决办法
3287
查看次数