У меня есть небольшая проблема с разработкой запроса https с ManagedBean. Проблема заключается в том, что я получаю следующее исключение:HTTPS-запрос через Glassfish
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 клиент работает прекрасно. Кто-нибудь знает, где моя неудача?
Я использовал код repository.
свой код следующим образом:
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());
}
}
Приветствия и спасибо за посоветуйте
Неверное хранилище ключей. GlassFish использует свои собственные хранилища ключей, расположенные в $ GFHOME/domains/yourdomain/config. Взгляните на раздел SSL, Network config-> Protocols в GF Admin. – vzamanillo
Сначала спасибо за ваш ответ @vzamanillo. Ваша точка была этой строкой кода 'System.setProperty (« javax.net.ssl.trustStore »,« cacerts.jks »);' right? Этот файл ссылается на мой файл сертификата в $ GFHOME/domains/yourdomain/config. Я также посмотрел на консоль администратора и настроен сертификат «s1as». И этот сертификат является действительным сертификатом в этом хранилище ключей. Какие-нибудь дополнительные идеи? – ZeusNet