PayPal 与 java 的集成
Posted
技术标签:
【中文标题】PayPal 与 java 的集成【英文标题】:PayPal Integration with java 【发布时间】:2016-01-22 23:04:08 【问题描述】:我正在尝试使用以下代码集与Paypal
连接,但是当我运行此代码时出现以下错误-。
]
它正在与谷歌等其他 URL 一起使用。
线程“主”javax.net.ssl.SSLHandshakeException 中的异常:sun.security.validator.ValidatorException:PKIX 路径构建失败:sun.security.provider.certpath.SunCertPathBuilderException:无法找到请求目标的有效证书路径
代码:
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import org.apache.http.HttpResponse;
import org.apache.http.client.HttpClient;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.impl.client.DefaultHttpClient;
@SuppressWarnings( "deprecation" )
public class HttpURLConnectionExample
public static void main(String[] args) throws UnsupportedOperationException, IOException
@SuppressWarnings("unused")
final String USER_AGENT = "Mozilla/5.0";
boolean test = true;
String url = "";
url += (test)? "https://www.sandbox.paypal.com/cgi-bin/webscr?" : "https://www.paypal.com/cgi-bin/webscr?";
String ownerEmail="mail2nkmishra-facilitator-1@gmail.com";
url += "business=" + ownerEmail + "&";
url += "cmd=" + "_xclick" + "&";
url += "amount=" + "20.00" + "&";
url += "item_name=" + "user_signup" + "&";
url += "item_number=" + "item_number" + "&";
url += "quantity=" + "1" + "&";
url += "currency_code=" + "USD" + "&";
url += "no_shipping=" + "1" + "&";
url += "rm=" + "2";
HttpClient client = new DefaultHttpClient();
HttpGet request = new HttpGet(url);
// add request header
request.addHeader("User-Agent", "Mozilla/5.0");
HttpResponse response = client.execute(request);
System.out.println("\nSending 'GET' request to URL : " + url);
System.out.println("Response Code : " +
response.getStatusLine().getStatusCode());
BufferedReader rd = new BufferedReader(
new InputStreamReader(response.getEntity().getContent()));
StringBuffer result = new StringBuffer();
String line = "";
while ((line = rd.readLine()) != null)
result.append(line);
System.out.println(result.toString());
【问题讨论】:
【参考方案1】:您遇到的问题是您的 Web 服务器(如 apache、weblogic 等)没有安装 paypal 的证书,就像您的 Web 浏览器安装了证书一样。 即在 weblogic 中,您使用 keytool 安装证书,您可以在此站点中验证您的签名算法sslLabs
这是scan 结果
【讨论】:
我使用的是apache tomcat,请告诉我如何安装证书 这个答案对你有帮助吗?不要忘记给问题打分以上是关于PayPal 与 java 的集成的主要内容,如果未能解决你的问题,请参考以下文章
PayPal:IPN/REST/Webhooks 与 Java 程序的集成