在我的应用中,当我构建加密的PayPal按钮时,如下所示:
buffer.append("business=" + Constants.SYSTEM_PAYPAL_BUSINESS_EMAIL + "\n");
buffer.append("cert_id=" + Constants.SYSTEM_PAYPAL_CERTIFICATE_ID + "\n");
buffer.append("charset=UTF-8\n");
buffer.append("currency_code=SGD" + "\n");
buffer.append("return=" + Constants.SYSTEM_STUDENT_HOMEPAGE + "\n");
buffer.append("cancel_return=" + Constants.SYSTEM_STUDENT_PATH + "RegisterPlacementTest.xhtml" + "\n");
buffer.append("notify_url=" + Constants.SYSTEM_STAFF_PATH + "ConfirmPlacementTest.xhtml" + "\n");
buffer.append("item_name=" + reservedPackage.getName() + "\n");
buffer.append("item_number=" + reservedPackage.getId() + "\n");
buffer.append("amount=" + (reservedPackage.getPrice() - reservedPackage.getDiscount()) + "\n");
buffer.append("custom=" + reservationID);
我希望看到我的套餐名称出现在PayPal结帐页面上。但是,我看到了一个输入文本字段来输入项目描述。我使用System.out.println
进行了检查,可以确认reservedPackage.getName()
不为空或为空。
如果你能告诉我这里做错了什么,我将非常感激。
答案 0 :(得分:1)
我找到了解决方案。我不得不移动这3行:
buffer.append("item_name=" + reservedPackage.getName() + "\n");
buffer.append("item_number=" + reservedPackage.getId() + "\n");
buffer.append("amount=" + (reservedPackage.getPrice() - reservedPackage.getDiscount()) + "\n");
最多将其放在currency_code
行之前,如下所示:
...
buffer.append("charset=UTF-8\n");
buffer.append("item_name=" + reservedPackage.getName() + "\n");
buffer.append("item_number=" + reservedPackage.getId() + "\n");
buffer.append("amount=" + (reservedPackage.getPrice() - reservedPackage.getDiscount()) + "\n");
buffer.append("currency_code=SGD" + "\n");
...
它完美无缺。我不知道为什么问题出现在第一位,但这是解决方案:P。