2017-07-20 2 views
0

クラウドからドキュメントを取得しようとしていて、フェッチした後、モデルクラスに含まれているInterfaceのネストされたオブジェクトにキャストできません。java-cloudant- findメソッドが入力ストリームの代わりにJSONを返さないのはなぜですか?

Service service = getDB().find(Service.class, service.get_id()); 

私の場合、サービスクラスにはメンバー変数として複数のインターフェイスがあり、クラウドからドキュメントを取得するときにキャストできません。

フェッチする方法はありますか? またはクラウド・ライブラリーはJSONString(戻り値としてjsonをパラメーターとして受け入れる方法)のメソッドを提供できます。

答えて

2

サービスクラスの代わりにJSONObjectを使用できます。次のMavenの依存関係を追加します。あなたのクラスで

<dependency> 
    <groupId>org.apache.wink</groupId> 
    <artifactId>wink-json4j</artifactId> 
    <version>1.4</version> 
</dependency> 

インポートJSONObject:

import org.apache.wink.json4j.JSONObject; 

JSONObjectとして、データベースから文書を取得します。FYI

JSONObject service = getDB().find(JSONObject.class, service.get_id()); 

、私はGoogleからのJSONObjectを信じますGsonも機能します:

<dependency> 
    <groupId>com.google.code.gson</groupId> 
    <artifactId>gson</artifactId> 
    <version>2.7</version> 
</dependency> 
+0

このように考えたことはありません!ありがとう:) – shraddha

関連する問題