gpt4 book ai didi

使用 Https 连接的 Java 应用程序 :"Connection refused error"

转载 作者:行者123 更新时间:2023-11-30 11:46:05 25 4
gpt4 key购买 nike

我为我的 JavaAppliaction 创建了一个 jar。我从这个应用程序连接到 WebApplicaton 中的 servlet(我将名称和密码从 swing 传递到 servlet)(这里我只是在 servlet 中显示名称和密码)。

我正在通过 SSL 连接 (Https) 传递数据。它在我的系统中运行良好。但是当我尝试在另一个系统中运行 jar 时,出现“连接被拒绝错误”。

注意:在另一个通过 http 连接传递数据的系统中运行 jar 工作正常。

我已经完成了这个link这建议我创建一个“jssecacerts”文件并将其粘贴到“另一个系统”的 $JAVA_HOME/jre/lib/security 文件夹中。但我仍然遇到同样的错误。为什么这不起作用??

最佳答案

一种可能的解决方案:尝试使用将公共(public)证书导入 java 默认 keystore 。

keytool -importcert -trustcacerts -file "path-to-public-cert"-keystore JAVA_HOME/jre/lib/security/cacerts

它会询问 keystore 密码默认 keystore 密码是“changeit”

您可以通过在网络浏览器(例如 chrome)中打开您的 URL 来获取公共(public)证书单击 URL 开头的图标 -> 单击证书信息 -> 详细信息选项卡 -> 单击导出 按钮。


更好的方法是:

  • 使用 JAVA_HOME/bin 中可用的“keytool”创建 keystore
  • 在此 keystore 中导入您服务器的公共(public)证书。
  • 将 keystore 与您的应用捆绑在一起。
  • 制作一个 bat/sh 文件来运行您的 jar,为 java 命令 -Djavax.net.ssl.trustStore=/path-to-your-keystore 提供参数

因此,每次您的应用启动时,它都会使用这个自定义 keystore 。因此您不必在运行应用程序的每个系统上复制 jssecacerts 文件。

关于使用 Https 连接的 Java 应用程序 :"Connection refused error",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9989340/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com