我想将PayPal集成到我的Web应用程序中。我正在使用RESTEasy API进行宁静的请求。我想知道如何在我的应用程序中集成贝宝。我已经从他们的网站下载了paypal java sdk,但现在我没有很好的应用程序,这将帮助我将贝宝整合到我的应用程序中。任何人都可以建议任何网站显示一步一步在网站paypal的规定或简单理解?使用Java在Web应用程序中集成Paypal
4
A
回答
3
3
我们必须按照以下步骤在java web应用程序中配置paypal.Here我已经显示了贝宝到贝宝和信用卡到贝宝付款的配置。
1.创建一个沙箱帐户。
2.创建Web应用程序。
3.用你的代码集成下面的struts2动作。如果你想用任何其他的方法,那么就直接使用方法并使用。
public class PaypalAction extends ActionSupport implements SessionAware {
private static final long serialVersionUID = 1L;
private String resultString;
private String token;
@SuppressWarnings("rawtypes")
private Map finalMap = new HashMap();
public void paypalPay() {
HttpServletRequest request = ServletActionContext.getRequest();
HttpServletResponse response = ServletActionContext.getResponse();
Integer payPercent = 10;
Map result = new HashMap();
String data1 = "";
try {
data1 = URLEncoder.encode("USER", "UTF-8") + "="+ URLEncoder.encode("Sandbox UserName","UTF-8");
data1 += "&" + URLEncoder.encode("PWD", "UTF-8") + "="+ URLEncoder.encode("Sandbox Password", "UTF-8");
data1 += "&" + URLEncoder.encode("SIGNATURE", "UTF-8") + "="+ URLEncoder.encode("Sandbox Signature","UTF-8");
data1 += "&" + URLEncoder.encode("METHOD", "UTF-8") + "="+ URLEncoder.encode("SetExpressCheckout", "UTF-8");
data1 += "&" + URLEncoder.encode("RETURNURL", "UTF-8") + "=" + URLEncoder.encode(request.getRequestURL().toString().replaceAll(request.getServletPath(), "") + "/successPage","UTF-8");
data1 += "&" + URLEncoder.encode("CANCELURL", "UTF-8") + "="+ URLEncoder.encode(request.getRequestURL().toString().replaceAll(request.getServletPath(), "") + "/failurePage", "UTF-8");
data1 += "&" + URLEncoder.encode("VERSION", "UTF-8") + "="+ URLEncoder.encode("104.0", "UTF-8");
data1 += "&" + URLEncoder.encode("AMT", "UTF-8")+ "=" + URLEncoder.encode("10", "UTF-8");
data1 += "&" + URLEncoder.encode("CURRENCYCODE", "UTF-8") + "=" + URLEncoder.encode("USD", "UTF-8");
data1 += "&" + URLEncoder.encode("L_NAME0", "UTF-8") + "=" + URLEncoder.encode("Sample Test", "UTF-8");
data1 += "&" + URLEncoder.encode("L_AMT0", "UTF-8") + "=" + URLEncoder.encode("10", "UTF-8");
data1 += "&" + URLEncoder.encode("CUSTOM", "UTF-8") + "="+ URLEncoder.encode("Thank You For business","UTF-8");
data1 += "&" + URLEncoder.encode("DESC", "UTF-8") + "=" + URLEncoder.encode("Product Details", "UTF-8");
data1 += "&" + URLEncoder.encode("NOSHIPPING", "UTF-8") + "="+ URLEncoder.encode("1", "UTF-8");
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
result = post(data1);
Iterator<?> iter = result.entrySet().iterator();
while (iter.hasNext()) {
Map.Entry mEntry = (Map.Entry) iter.next();
}
if(result!=null){
token = (String) result.get("TOKEN");
String url = "https://www.sandbox.paypal.com/cgi-bin/webscr?cmd=_express"+ "-" + "checkout&token=" + (String) result.get("TOKEN");
try {
response.sendRedirect(url);
} catch (IOException e) {
e.printStackTrace();
}
}
}
public String successPage() {
HttpServletRequest request = ServletActionContext.getRequest();
String payerID = request.getParameter("PayerID");
String token=request.getParameter("token");
doPaypalPayment(payerID,token);
return "success";
}
public String failurePage()
{
return "failurePage";
}
public void doPaypalPayment(String payerID, String token2) {
Map result = new HashMap();
String data = "";
try {
data1 = URLEncoder.encode("USER", "UTF-8") + "="+ URLEncoder.encode("Sandbox UserName","UTF-8");
data1 += "&" + URLEncoder.encode("PWD", "UTF-8") + "="+ URLEncoder.encode("Sandbox Password", "UTF-8");
data1 += "&" + URLEncoder.encode("SIGNATURE", "UTF-8") + "="+ URLEncoder.encode("Sandbox Signature","UTF-8");
data += "&" + URLEncoder.encode("METHOD", "UTF-8") + "="+ URLEncoder.encode("DoExpressCheckoutPayment", "UTF-8");
data += "&" + URLEncoder.encode("PAYERID", "UTF-8") + "="+ URLEncoder.encode(payerID, "UTF-8");
data += "&" + URLEncoder.encode("PAYMENTACTION", "UTF-8") + "="+ URLEncoder.encode("Sale", "UTF-8");
data += "&" + URLEncoder.encode("TOKEN", "UTF-8") + "="+ URLEncoder.encode(token2, "UTF-8");
data += "&" + URLEncoder.encode("AMT", "UTF-8") + "="+ URLEncoder.encode("10", "UTF-8");
data += "&" + URLEncoder.encode("VERSION", "UTF-8") + "="+ URLEncoder.encode("104.0", "UTF-8");
data += "&" + URLEncoder.encode("CURRENCYCODE", "UTF-8") + "="+ URLEncoder.encode("USD", "UTF-8");
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
result = post(data);
}
public void deformatNVP()
{
try
{
String delims = "[&]";
String equals = "[=]";
String[] tokens = this.resultString.split(delims);
for(int i = 0; i < tokens.length; i++)
{
String[] newTokens = tokens[i].split(equals);
this.finalMap.put(URLDecoder.decode(newTokens[0], "UTF-8"), URLDecoder.decode(newTokens[1], "UTF-8"));
}
} catch (Exception e) {
System.out.println(e.toString());
}
//return finalMap;
}
public Map post(String data)
{
try
{
//Connect to the url
URL url = new URL("https://api-3t.sandbox.paypal.com/nvp");
URLConnection conn = url.openConnection();
conn.setDoOutput(true);
OutputStreamWriter wr = new OutputStreamWriter(conn.getOutputStream());
//Post the data
wr.write(data);
wr.flush();
// Get the response
BufferedReader rd = new BufferedReader(new InputStreamReader(conn.getInputStream()));
this.resultString = rd.readLine();
deformatNVP();
wr.close();
rd.close();
} catch (Exception e) {
System.out.println(e.toString());
}
return finalMap;
}
@Override
public void setSession(Map<String, Object> arg0) {
// TODO Auto-generated method stub
}
public void doPaypalPaymentWithCreditCard() {
try
{
//Load the caller service
//Create a new map to hold the result
Map result = new HashMap();
// Construct data request string
String data1 = URLEncoder.encode("USER", "UTF-8") + "="+ URLEncoder.encode("Sandbox UserName","UTF-8");
data1 += "&" + URLEncoder.encode("PWD", "UTF-8") + "="+ URLEncoder.encode("Sandbox Password", "UTF-8");
data1 += "&" + URLEncoder.encode("SIGNATURE", "UTF-8") + "="+ URLEncoder.encode("Sandbox Signature","UTF-8"); data += "&" + URLEncoder.encode("METHOD", "UTF-8") + "=" + URLEncoder.encode("DoDirectPayment", "UTF-8");
data += "&" + URLEncoder.encode("AMT", "UTF-8") + "=" + URLEncoder.encode("20.10", "UTF-8");
data += "&" + URLEncoder.encode("VERSION", "UTF-8") + "=" + URLEncoder.encode("80.0", "UTF-8");
data += "&" + URLEncoder.encode("IPADDRESS", "UTF-8") + "=" + URLEncoder.encode("192.168.1.0", "UTF-8");
data += "&" + URLEncoder.encode("PAYMENTACTION", "UTF-8") + "=" + URLEncoder.encode("Sale", "UTF-8");
data += "&" + URLEncoder.encode("CREDITCARDTYPE", "UTF-8") + "=" + URLEncoder.encode("Visa", "UTF-8");
data += "&" + URLEncoder.encode("ACCT", "UTF-8") + "=" + URLEncoder.encode("4532513511140817", "UTF-8");
data += "&" + URLEncoder.encode("EXPDATE", "UTF-8") + "=" + URLEncoder.encode("102014", "UTF-8");
data += "&" + URLEncoder.encode("CVV2", "UTF-8") + "=" + URLEncoder.encode("123", "UTF-8");
data += "&" + URLEncoder.encode("FIRSTNAME", "UTF-8") + "=" + URLEncoder.encode("Jason", "UTF-8");
data += "&" + URLEncoder.encode("LASTNAME", "UTF-8") + "=" + URLEncoder.encode("Michels", "UTF-8");
data += "&" + URLEncoder.encode("STREET", "UTF-8") + "=" + URLEncoder.encode("123", "UTF-8");
data += "&" + URLEncoder.encode("CITY", "UTF-8") + "=" + URLEncoder.encode("Papillion", "UTF-8");
data += "&" + URLEncoder.encode("STATE", "UTF-8") + "=" + URLEncoder.encode("NE", "UTF-8");
data += "&" + URLEncoder.encode("ZIP", "UTF-8") + "=" + URLEncoder.encode("68046", "UTF-8");
data += "&" + URLEncoder.encode("COUNTRYCODE", "UTF-8") + "=" + URLEncoder.encode("US", "UTF-8");
result = post(data);
//This will iterate through the entire response map
Iterator iter = result.entrySet().iterator();
while (iter.hasNext()) {
Map.Entry mEntry = (Map.Entry) iter.next();
System.out.println(mEntry.getKey() + " : " + mEntry.getValue());
}
//Now that you have a response check to see if it is a success
String ack = "" + result.get("ACK");
if("Success".equals(ack))
{
System.out.println("Congratulations your transaction was a success");
}
else
{
System.out.println("There was an error with your request.");
}
}
catch (Exception e)
{
System.out.println(e.toString());
}
}//end of main function
}
这是为了me.Hope工作正常,这将有助于那些谁想要配置通过PayPal付款。
+0
您可以请我们发布您的完整代码。我的意思是所有的班级,以便像我这样的贝宝新手可以从中受益 – LifeSaver
相关问题
- 1. Paypal在Web应用程序中的集成
- 2. 在应用程序或Paypal与iPhone应用程序集成
- 3. Java Web应用程序Paypal IPN
- 4. Paypal - Flex:集成应用程序开票
- 5. iphone应用程序paypal支付集成
- 6. 集成paypal支付方式到web应用程序
- 7. 在Java应用程序中集成RapidMiner
- 8. 在Java Web应用程序中集成条码扫描器
- 9. 在Java Web应用程序中集成R
- 10. 在我的Java Web应用程序中集成OLAP报告
- 11. 在java web应用程序中集成已签名的applet
- 12. 在Java Web应用程序中集成php模块
- 13. Skype在Web应用程序集成
- 14. 如何使用webview将paypal集成到Android应用程序
- 15. 将Java Web Start jar与web应用程序集成
- 16. 如何在Android应用程序中集成paypal捐赠?
- 17. 如何在Android应用程序中集成PayPal?
- 18. paypal在asp.net应用程序中的ipn集成
- 19. 在Java应用程序TTS集成
- 20. 集成在Java EE应用程序
- 21. 如何在PHP的Web应用程序中使用Paypal标准
- 22. 现有应用程序中的Java Web服务集成
- 23. java web应用程序中的生物度量设备集成
- 24. 将Ruby/Rails应用程序集成到Java应用程序中。
- 25. 在使用Java Web应用程序
- 26. 如何集成Web应用程序
- 27. 将OBIEE与Web应用程序集成
- 28. 将IMCache与Web应用程序集成
- 29. Web应用程序与Drupal的集成
- 30. Hadoop与Web应用程序的集成
该向导的更新链接:https://devtools-paypal.com/integrationwizard/ – maxivis