java - 如何检测 Java Web Start 何时/为何无法为用户启动

标签 java java-web-start

情况:

拥有多个内部 Java 应用程序的大公司,这些应用程序通过 Java Web Start 从 Java Web 应用程序启动。用户登录 Java Web 应用程序并选择通过 Java WebStart 启动的程序。当用户尝试运行应用程序时,应用程序会登录数据库。应用程序启动后,它会在数据库中标记成功的行。

问题:

数据库中存在用户启动程序的行,但应用程序从未更新它启动的数据库。我能想到的原因只有几个:

  • 用户没有安装 JVM 或可能没有安装正确的版本
  • 由于网络服务器/部署问题,应用程序无法加载。 (例如,并非应用程序所需的所有 .jar 都已部署到 Web 服务器。
  • 应用程序与数据库存在连接问题,或者存在导致其无法写入数据库的错误。

目标/问题:

我想确定原因的数量。是否有办法检测 Java Web Start 应用程序无法启动的原因,以便我可以了解这种情况发生的频率?还有其他我可能没有考虑的原因吗?

最佳答案

你的原因看起来都很合理,但我认为通过添加更多代码很难解决这些问题,尤其是前两个原因。我认为您将需要进行一些更老式的故障排除,以便您可以重现用户遇到的问题。

网络应用程序中可能出现“启动时遇到问题?”遇到前两个问题之一的用户可以使用该链接来报告问题,因为他们应该能够轻松检测到应用程序未启动。

为了消除第三个原因,不要让应用程序本身直接连接到数据库,而是仅让它们通过 HTTP 与启动 JNLP 的 Web 应用程序进行通信 - 您可以合理地确信它们已连接到那个服务器。然后让该网络应用程序插入适当的数据库记录。

关于java - 如何检测 Java Web Start 何时/为何无法为用户启动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4259456/

相关文章:

java - JNA C DLL 调试方法?

java - 使用 Eclipse 调试 jnlp 应用程序

java - 在没有插件的情况下从浏览器运行 Java 程序

java - 可以在浏览器中启动 JWS 小程序而不是独立启动吗?

java - 如何为 Java Web Start 应用程序进行基于网页的身份验证?

java - 实现创建时出错 - HHH000437 尝试保存一个或多个

java - 使用逗号作为分隔符分隔字符串中的 id 或值

Java 和无符号字节

java - 从命令行编译 Java

java - 通过 JWS 和生成的 JNLP 部署 Java 应用程序