关于节俭函数返回列表
Posted
技术标签:
【中文标题】关于节俭函数返回列表【英文标题】: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代码吗? 【参考方案1】:我遇到了同样的问题。我发现如果删除列表之前的“可选”修饰符,返回值是正确的。但我不知道为什么我们不能在列表之前使用“可选”。
【讨论】:
【参考方案2】:如果您认为自己可能发现了错误,请打开JIRA 票证并添加您的可重现测试用例。这使其他人更容易查看它。谢谢!
【讨论】:
以上是关于关于节俭函数返回列表的主要内容,如果未能解决你的问题,请参考以下文章
带有列表的 Python 字典,如何在节俭的存根代码中描述它?