2012-01-02 9 views
3

JAX-RS REST Webサービス経由でデータを提供するJava EE 6 Webアプリケーションがあります。 エンティティには、JPAアノテーションとjavax.xml.bind JAXアノテーションアノテーションが付いています。 私の目的は、WebアプリケーションのクライアントでJAXアンマーシャリングに使用されるJAX-RS注釈付き "DTO"クラスを含むWeb-Appプロジェクトからクライアント・ジャーをアセンブルすることです。REST-ClientsのエンティティからJAX-RS「DTO」を公開するにはどうすればよいですか?

クライアントエンティティに未加工エンティティを配置することは、クライアントの偽の依存関係につながるJPAアノテーションのためにオプションではありません。

JA-RSクラスをweb-appとクライアント用に2回書くことなく、これを行う方法はありますか?

エンティティ内のすべてのJPAアノテーションを処理していると思っていましたが、これは非常にハイテクですが、あまり便利ではありません。 私の2番目のアイデアは、エンティティの必要なゲッター/セッターのインターフェースを抽出することです。ここでの質問は、クラスメンバーとゲッターに配置されたJAXアノテーションを処理する方法です。

どちらの方法も何とか働くようです。しかし、その目的のための汎用的なソリューションはありますか?

ヒント:はい、私は進化などに休息とそのカップリングの欠点を経由して直接JPA-エンティティを公開する方法を知ってる=)

答えて