1

オブジェクトABCのリストを返す関数を使用したリサイクルサービスがあります。

struct ABC
{

     1: string user_id;

     2: string foo;

     3: optional list<string> data;
}


list<ABC> getABCByUser(1:required string user_id, 2:i32 limit,3:i32 pageId, 4:string lastDocID)
throws (1:InvalidRequestException ire, 2:UnavailableException ue, 3:TimedOutException    te)

c++ で書かれたサーバー側 サーバー側から返された結果を出力します。ABC インスタンスのデータは、getABCByUser の応答で null ではありません。

Java によって記述されたクライアント側では、Java 側で thrift によって生成されたコードにブレークポイントを設定しました。ABC インスタンスのデータは null で、他のフィールドは null ではありません。クライアント側の問題のようです。この問題を解決する方法はありますか?

前もって感謝します!

4

2 に答える 2

1

私はあなたと同じ問題に遭遇します。リストの前の「オプション」修飾子を削除すると、戻り値が正しくなることがわかりました。しかし、リストの前に「オプション」を使用できない理由がわかりません。

于 2015-12-05T09:45:58.760 に答える