paypal返回URL和Java @RequestParam:缺少参数

时间:2015-08-08 10:33:51

标签: java spring paypal

在我的Java Spring Roo Web应用程序中,我尝试集成PayPal Express Checkout。 我确实进入了PayPal网站并处理了我的交易。 然而,当从Paypal检索RETURN URL时,他们无法正确识别和成功页面。看来之前有参数吗? (问号)。

这是我从PayPal回来的: http://localhost:8080/ /贝宝/成功&安培;用户id = 2及?的itemId = 5标记= EC-8W2450105U799570F&安培; PayerID = VGHU6332LAEW8

正如您所看到的,在?之前有2个参数。 使用

处理带有Spring(Roo)的URL时
    @RequestMapping(produces = "text/html")
public String success(
        @RequestParam(value = "userId", required = false) String userId, 
        @RequestParam(value = "itemId", required = false) String itemId, 
        @RequestParam(value = "token", required = false) String token, 
        @RequestParam(value = "PayerID", required = false) String PayerID, 
        Model uiModel) {

仅找到最后两个参数:token和PayerID 我想这是因为参数通常在后面找到? (问号)。

要使用PayPal进行处理,请使用Integrating PayPal for Digital Goods from Northway games。在此实现中,userId和ItemID被发送到Paypal。我不知道这是否会造成麻烦。

问题

  1. 为什么PayPal会在之前返回参数? (问号)?
  2. 如何解决此问题,如何获取其他参数?
  3. 什么是最干净的解决方案?

1 个答案:

答案 0 :(得分:0)

解决。

在我从Northway游戏中使用的PayPalManager.java类中,returnURL是:

RETURN_URL + "&userId=" + userId + "&itemId=" + itemId);

将其更改为

RETURN_URL + "?userId=" + userId + "&itemId=" + itemId);
问题解决了。

标记? (userId之前的问号)