繁体   English   中英

通过Glassfish的HTTPS请求

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM