关于节俭功能返回列表

时间:2013-08-05 07:42:31

标签: java thrift

我有一个函数返回对象ABC列表的thrift服务:

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的响应中为非空。

在客户端如何用java编写: 我在java端的thrift生成的代码中设置了断点,ABC实例中的数据为null,其他字段不为null。 它看起来像是客户端的一个问题。知道如何解决这个问题吗?

提前感谢!

2 个答案:

答案 0 :(得分:1)

我遇到了同样的问题。我发现如果删除&#34;可选&#34;列表前的修饰符,返回值将是正确的。但我不知道为什么我们不能使用&#34;可选&#34;在列表之前。

答案 1 :(得分:0)

如果您认为自己可能发现了错误,请打开JIRA票证并添加可重现的测试用例。这使其他人更容易看到它。谢谢!