[英]HTTPS request via Glassfish
我在ManagedBean中使用https請求開發時遇到了一些問題。 問題是我遇到以下異常:
javax.net.ssl.SSLPeerUnverifiedException: Host name 'bitpay.com' does not match the certificate subject provided by the peer (CN=bitpay.com, O="BitPay, Inc.", L=Atlanta, ST=Georgia, C=US, SERIALNUMBER=5163966, OID.2.5.4.15=Private Organization, OID.1.3.6.1.4.1.311.60.2.1.2=Delaware, OID.1.3.6.1.4.1.311.60.2.1.3=US)
但是,如果我在純Java客戶端中嘗試代碼,則效果會很好。 有人知道我的失敗在哪里嗎?
我已經使用了該存儲庫中的代碼。
我自己的代碼如下:
import model.BitPay;
import model.Invoice;
import javax.inject.Named;
import javax.enterprise.context.Dependent;
@Named(value = "bitPayMBean")
@Dependent
public class BitPayMBean {
private static final String API_KEY = "";
@Named(value = "returnUrl")
private String returnUrl = "URL";
public void setReturnUrl(String returnUrl) {
this.returnUrl = returnUrl;
}
public String getReturnUrl() {
return returnUrl;
}
public BitPayMBean() {
System.setProperty("javax.net.ssl.trustStore", "cacerts.jks");
System.setProperty("javax.net.ssl.trustStorePassword", "changeit");
}
public void transaction(double value) {
BitPay bitpay = new BitPay(API_KEY, "USD");
Invoice invoice = bitpay.createInvoice(value);
setReturnUrl(invoice.getUrl());
}
}
干杯,謝謝你的建議
所以我解決了我的問題。 問題在於,在我的JDK版本8的證書文件中並沒有集成所有證書,在我的JDK版本6的證書文件中的哪個地方。因此,我已將缺少的jdk6證書集成到我的jdk8證書文件中。 那解決了我的問題
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.