PayPal PaymentDetails getReceiverList() 为空。为啥?
Posted
技术标签:
【中文标题】PayPal PaymentDetails getReceiverList() 为空。为啥?【英文标题】:PayPal PaymentDetails getReceiverList() is null. Why?PayPal PaymentDetails getReceiverList() 为空。为什么? 【发布时间】:2011-07-25 19:30:20 【问题描述】:我正在使用 PayPal Adaptive Payments 的 IPN。我能够让 IPN 正常工作,但是当我决定从 PayPal 获取已完成交易的付款详细信息时,PaymentDetails 类的 getReceiverList 方法返回 null。
PaymentDetailsRequest paymentDetailsRequest = new PaymentDetailsRequest("en_US", ServiceEnvironment.SANDBOX);
paymentDetailsRequest.setPayKey(payKey);
PaymentDetailsResponse paymentDetailsResponse = paymentDetailsRequest.execute(credentialObj);
PaymentDetails paymentDetails = paymentDetailsResponse.getPaymentDetails();
List<Receiver> receiverList = paymentDetails.getReceiverList();
// receiverList returns null
这不应该发生,因为交易已经完成并且显然有一个接收者。
如果我从同一个 paymentDetails 对象中提取其他数据,例如付款状态,我会得到正确的结果。
String paymentStatus = paymentDetails.getStatus();
// paymentStatus returns COMPLETED
有没有人遇到过这种情况并能告诉我为什么会这样?
【问题讨论】:
【参考方案1】:以防万一有人遇到这个问题,我发现 PayPal Adaptive Payments 的 IPN 仍然存在许多故障,这就是其中之一。基本上 getReceiverList() 方法没有得到任何东西。对于每个在应该返回某些内容时返回 null 的方法都是如此。
【讨论】:
以上是关于PayPal PaymentDetails getReceiverList() 为空。为啥?的主要内容,如果未能解决你的问题,请参考以下文章