現在、次のコンポーネントを使用して分散アプリケーションに取り組んでいます。
1.層: データベース サーバー -> MySQL 5.5
2.層: アプリケーション サーバー -> Glassfish 3.1.2.2
3.層: スタンドアロン Fat-Client -> Java-SE (JRE 6)
JPA 2.0 (eclipse-link) を永続化プロバイダーとして使用し、現在、シリアル化を使用して第 2 層と第 3 層の間で @Entity Bean を渡しています。JPA でサポートされている遅延フェッチを利用するために、静的ウィービングを使用します。
私の問題は、第 2 層と第 3 層の間のシリアル化のために遅延フェッチが機能しないことです。エンティティ Bean の 1 つをシリアル化するたびに、ネットワーク経由で送信する前に他のエンティティ/テーブルとのすべての関係を取得する必要があるため、ネットワーク トラフィックが大量に発生します。
このようなセットアップで JPA 遅延フェッチを利用するにはどうすればよいですか? 軽量の DTO/DAO を導入する必要のない回避策はありますか (これにより、プロジェクトが非常に複雑になります)。
事前にご協力いただきありがとうございます。