Orika はジェネリック型をサポートしていますが、ジェネリック コレクションを操作するには問題があります。Orika はさまざまなコレクション戦略 (累積、非累積、孤立した削除) をサポートしていないため、要件を処理するカスタム マッパーを作成する必要があります。
問題は、Orika がこのマッパーを適用せず、代わりに通常のコレクション マッピング ロジックを使用しようとすることです。
Type<List<Document>> DOCUMENT_LIST = new TypeBuilder<List<Document>>() {}.build();
Type<List<DocumentRepresentation>> DOCUMENT_REP_LIST = new TypeBuilder<List<DocumentRepresentation>>() {}.build();
mapperFactory.classMap(DOCUMENT_LIST, DOCUMENT_REP_LIST)
.mapNulls(true)
.mapNullsInReverse(true)
.customize(new NonCumulativeListMapperDocumentToDocumentRepresentation())
.register();
public class NonCumulativeListMapperDocumentToDocumentRepresentation
extends CustomMapper<List<Document>, List<DocumentRepresentation>> {
//mapping logic
}
また、親マッピングで型リストを明示的に設定しようとしました
.fieldMap("documents", "documents")
.aElementType(Document.class)
.bElementType(DocumentRepresentation.class)
.add()
しかし、これも取り上げられませんでした。
私が見逃しているものについてのヒントはありますか?