我在两个不同的多米诺骨牌服务器上使用相同的版本有两个不同的java设置。 12.0.2 FP2。
在这里您可以看到在 System.properties 中找到的服务器设置:
服务器1.
java.protocol.handler.pkgs=com.sun.net.ssl.internal.www.protocol
服务器2.
java.protocol.handler.pkgs=com.ibm.domino.internal.protocol
---
奇怪的是,当在代理中测试 java.net.UrlConnection 时,它在两台服务器上都可以工作。但是当在 XPage 中使用的 java 类中执行此操作时,它不起作用。
这是我们在服务器 2 上遇到的错误。
[1410:0011-0454] 2023-09-07 12:21:45 HTTP JVM:java.lang.ClassCastException:com.sun.net.ssl.internal。 www.protocol.https.HttpsURLConnectionOldImpl 与 javax.net.ssl.HttpsURLConnection 不兼容
此设置开始不同的原因是什么?我怎样才能使它们相同?
当前,这导致我在对 https 进行 java.net.UrlConnection 调用时,根据 xpage/script 运行的服务器编写不同的 XPage java 代码。
注意:我只假设 java.protocol.handler.pkgs 的值是造成这种情况的原因,当然也可能是其他原因,但这是我最好的猜测。
在服务器 2 上,我们还有一些其他设置指向错误的路径,并且在服务器 1 上丢失了
好吧,我还没有测试与您完全相同的设置,因为我们看到 12.0.2 FP2 存在一些其他问题(例如,使用 XPage 中的富文本字段编辑器)。
但是,我必须更改类中的一些内容,以便在调用相邻系统时处理无效的 SSL 证书。最初,我使用了一些 IBM 软件包,在某个时刻(11 或 12)这些软件包从产品中消失了,我不得不使用 Sun 类来代替 - 做同样的事情...
所以我的第一次尝试是更改服务器 2 以使用 Sun 处理程序。代理是一种特殊的生物,实际上还没有成为 XPages 使用的更现代的 Java 环境的一部分(我知道 12.0.2 中有一些变化 - 但我还没有真正尝试过它们)。这可以解释为什么它在 Java 代理中有效,而不是在 XPages 中......
/约翰