2011-03-30 50 views
1

我正在使用PayPal Adaptive Payments的IPN。我能夠讓IPN工作,但是當我決定從PayPal返回COMPLETED事務的付款細節時,PaymentDetails類的getReceiverList方法返回null。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的方法都應該返回null。