Eclipse 用の Google プラグインを使用して、Android クライアントと一緒に Google App Engine サーバーを構築しています。自動化ツールを使用してサーバー API を呼び出すための Android クライアント ライブラリを生成すると、予期しない問題が発生します。
サーバー側に 、 、 の 3 つのモデル クラスがUser
ありUserLocation
ますDeviceInfo
。
User
は とのOneToOne
関係UserLocation
、および とのOneToOne
関係を持っていDeviceInfo
ます (これらの関係は両方とも によって所有されていUser
ます)。
JPA アノテーションを使用して、サーバー モデル クラスでこれらの関係をモデル化しています。
モデル クラスを実装した後、プラグインを使用して「クラウド エンドポイント クライアント ライブラリを生成」します。これにより、Android クライアントにライブラリが自動的に追加され、モデル クラスで CRUD 操作を実行できるようになります。
プラグインが 3 つのエンドポイントのそれぞれに 1 つずつ、複数のUser
、UserLocation
、およびDeviceInfo
クラスを生成することを除いて、これはすべてうまく機能します。オブジェクトは、追加しようとしているクラスとは異なるクラスを期待しているため、オブジェクトにUser
オブジェクトを追加しようとすると、問題が発生します。DeviceInfo
DeviceInfo
User
それが理にかなっていることを願っています。
User
オブジェクトをオブジェクトに関連付けるにはどうすればよいDeviceInfo
ですか?