有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

从服务器运行notes java代理时,ssl没有受信任的证书

我有一个Java代理正在执行HTTPS POST:

            URL url = new URL("https://postman-echo.com/post");
            HttpsURLConnection conn = (HttpsURLConnection) url.openConnection();
            SSLContext sc = SSLContext.getInstance("TLSv1.2");
            sc.init(null, null, new java.security.SecureRandom());
            conn.setSSLSocketFactory(sc.getSocketFactory());
            conn.setRequestMethod("POST");
            conn.setRequestProperty("Content-Type", "application/x-www-form-urlencoded");
            conn.setRequestProperty("Content-Length", String.valueOf(postDataBytes.length));
            conn.setDoOutput(true);
            conn.getOutputStream().write(postDataBytes);
            //Reader in = new BufferedReader(new InputStreamReader(conn.getInputStream(), "UTF-8"));

            System.out.println("RESPONSE : "  + conn.getResponseMessage());
            return conn.getResponseMessage();

在服务器上手动运行代理时,此帖子有效。如果我通过以下方式发布代理计划或通过控制台:告诉amgr run 然后我得到了这个错误:

error message: javax.net.ssl.SSLHandshakeException: com.ibm.jsse2.util.j: No trusted certificate found

我真的不知道为什么会这样。它使用以下命令运行代理: 1.目标设置为无 2.使用管理员ID运行 3.安全性允许具有完全管理权限的受限操作

它在上周起作用了,现在不再起作用了

更新 在向:https://postman-echo.com/post发送邮件时,它可以工作,在从服务器运行时也可以工作。 当我在自己的网站上发布具有comodo扩展验证ssl的帖子时,我会收到“无可信证书”错误

解决方案 我已将服务器从9.0.1 FP4更新为9.0.1 FP10。它现在将数据(来自scheduled agent)发布到HTTPS地址,而不会收到错误


共 (1) 个答案

  1. # 1 楼答案

    java代理在domino中实现的JRE中运行。当您通过https连接时,必须将请求站点的ssl证书导入JRE的信任库(cacert文件)。否则,ssl握手将失败。 JRE在服务器上的位置是/jvm/lib/security