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