問題タブ [orika]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
465 参照

mapping - Orika カスタム マッパー内で外部サービスを呼び出す

Orika を使用して、オブジェクトAをオブジェクトBにマップしたいとします。オブジェクトBの 1 つのフィールドは、オブジェクトAにあるパラメーターを使用して外部 Web サービスを呼び出すことによって構築されます。

外部サービスを呼び出すサービスを使用する Orika custom-mapper を作成することは良い習慣ですか、それともこの動作を外部クラスで分離する必要がありますか?

0 投票する
1 に答える
792 参照

spring - Orikaクラスは利用できません

DTO から休止状態のエンティティにマッピングすると、次の例外が発生します。

ma.glasnost.orika.MappingException: ma.glasnost.orika.impl.generator.CompilerStrategy$SourceCodeGenerationException: クラス com.exmaple.MyEntity_$$_jvst402_4 にアクセスできません

エンティティはパブリックです。

バージョン:

  • spring-boot-starter-data-jpa: 1.4.0.RELEASE
  • オリカ: 1.4.6
  • 休止状態: 5.0.9.Final。
0 投票する
1 に答える
667 参照

mapping - Orika: 2 つのクラスのフィールドを 1 つのクラスにマッピングする

Orika を使用してクラスからクラスにフィールドをマップする方法はありますか。
orika のドキュメントで解決策が見つかりません。

この例では、クラス ObjectOne のフィールド test & name を、対応するフィールド ObjectNew にマップする必要があります。

ObjectTwo のフィールド シートと同じ

ObjectNew のコード

ObjectOne と ObjectTwo の両方のクラスのフィールドは、クラス ObjectOne と ObjectTwo の ID が同じ場合、新しいオブジェクト ObjectNew を開始する必要があります。

これを処理する方法はありますか?

敬具

0 投票する
1 に答える
1663 参照

java - Orika mapper - リストへのマップ

フィールドを持つ 1 つのオブジェクトがあり、List<AnotherObject>それをフィールドを持つ 2 番目のオブジェクトにマップしたいと考えていますList<String>。2 つのオブジェクトをマップする必要があります。私は道を見つけることができません。

状況マップ クラス 1 -> クラス 2 :

実際のビジネスは例よりもはるかに大きいため、カスタム マッパーを作成することは除外します。

0 投票する
0 に答える
356 参照

java - あるオブジェクトから別のオブジェクトへの Orika マッピング

同じクラスの下に2つの異なるオブジェクトを持つクラスがあります:

Addr -> AddressDTO オブジェクトを Customer オブジェクトにマップしようとしています:

これを実行すると、次のエラーが発生します。

原因: java.lang.IllegalArgumentException: java.lang.String は、com.domain.AddressDTO のインスタンスを構築するためのサポートされていないソース クラスです

0 投票する
0 に答える
366 参照

hibernate - Orika および Hibernate 管理コレクション

現在、Orika を使用して Hibernate マネージド ドメイン オブジェクトとモデル (DTO) をマッピングしています。モデルから行くときにコレクションをマージしたいのでこれを行います->ドメイン。変更が行われない場合、エンティティのHibernateバージョン番号は繰り返されません。最初に、次のように定義されたマッパーをセットアップしました。

これは、実際には永続レイヤーを使用しない単体テストでは正常に機能しますが、Hibernate との統合テストを行うと、これはまったく呼び出されません。実際、私のオブジェクトのコレクションは、どちらの方向にも読み込まれません。掘り下げると、これは Hibernate が PersistentList を使用しているためであることが明らかになりました (List を実装しますが、型情報はありません)。だから今私は2つのマッパーを持っています:

A を削除すると、Orika はマッパーがまったく存在しないかのように振る舞います。これは、私が提供するすべてのクラス マップを分析しているときに、PersistentList に一致するものが見つからないため、含まれていないためだと思います。

B を削除すると、Orika は PersistentList をマップしないため、Hibernate から返されたドメイン オブジェクトをモデルに適切にマップしません。

これをきれいにする方法はありますか?あいまいでない方法ですべてのケースをカバーする単一のマッピングを定義するにはどうすればよいですか?

0 投票する
0 に答える
940 参照

java - Orika Mapper でネストされたフィールドのマッピングが機能しない

以下のエンティティ クラスを検索します。

以下の DTO クラスを検索

RoomEntity から RoomDTO にデータをコピーするために、以下のマッパー コードを作成しました。

プロパティ - コードとタイプの値が RoomEntity から RoomDTO にコピーされます。
ただし、ネストされたプロパティ値 ( hotel.name -> hotelName ) はコピーされません。
この問題の解決にご協力ください。