【问题标题】:regarding thrift function return list关于节俭函数返回列表
【发布时间】:2013-08-05 07:42:30
【问题描述】:

我有一个带有返回对象 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++编写的服务器端 我打印出服务器端返回的结果,在getABCByUser的响应中,ABC实例中的数据不为空。

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

提前致谢!

【问题讨论】:

  • 你能显示生成的java代码吗?

标签: java thrift


【解决方案1】:

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

【讨论】:

    【解决方案2】:

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

    【讨论】:

      猜你喜欢
      • 2012-07-11
      • 2019-12-29
      • 1970-01-01
      • 1970-01-01
      • 2019-05-20
      • 1970-01-01
      • 1970-01-01
      • 2012-11-28
      相关资源
      最近更新 更多