【问题标题】:Migrate Java Applet to what/where?将 Java Applet 迁移到什么/哪里?
【发布时间】:2009-11-13 10:25:09
【问题描述】:

我目前正在审查一个中等大小的代码库(大约 30K LOC),它使用一个巨大的 Applet 并与其他系统交互。

它是一个创建自定义标签的工具,所以我们需要拖放和其他相关的UI组件。

鉴于代码库是 Java,您将迁移到哪个技术。

  • 小程序 -- 否
  • Java FX -- 采用率太低
  • GWT -- 重构并不容易

任何想法/建议。

【问题讨论】:

  • 为什么说重构在 GWT 中不容易?这不是我的经验。
  • 从小程序到 GWT 的工作量更大吗?

标签: java gwt applet migration javafx


【解决方案1】:

为什么需要迁移它?因为拖放?

也许您应该考虑将它作为一个独立的 Java 应用程序运行并使用Java Web Start 来提供它。我认为将其从小程序转换为最小的编码更改。

【讨论】:

  • 您可以编写一个 JNLP 文件,该文件在 WebStart 中不加改动地运行一个小程序(尽管显然它没有获得 LiveConnect)。
  • 我没有意识到这一点。谢谢,汤姆
  • 同意 - 听起来不错。 JNLP 和 web start 的效果出奇的好。
  • 感谢您的信息。小程序的大小已经变得很大,即使在良好的网络中也需要一段时间。所以我们想打破并考虑重构或包装它。
  • 应用程序有一个普通的 Web 应用程序部分,用户可以从那里进入设计模式并返回并在他们的选择中使用它们。所以不能单独运行。
【解决方案2】:

使用 AjaxSwing 自动将您的小程序转换为 Web 应用程序。您可能必须编写自己的拖放操作,但必须使用任何其他框架来完成。至少您无需进行任何编码即可获得其余部分。

http://ajaxswing.com

【讨论】:

  • 酷。你有第一手的反馈吗?谢谢。
  • 是的,我们已经在几个应用程序中使用了它并且效果很好。并非所有东西都能 100% 开箱即用,因此我们必须在 Swing 代码中对多线程进行细微调整,并且我们必须对几个自定义组件进行一些配置更改。但这是一个快速的过程,最终整个应用程序在浏览器中运行,就像一个真正的网络应用程序一样。
【解决方案3】:

您的问题有点难以理解。 据我所知,JavaFX 和 Applets 共享相同的技术。

我经常使用 GWT,我相信从 Applets/Swing 迁移到 GWT 非常容易。 但是您只能使用 Java 库的一个子集,所以不要期望您可以只编译一个 SWING 应用程序并使用 GWT 运行它。有些事情在浏览器中是不可行的,因此您可能需要将一些代码移动到服务器并仅将 UI 层保留在浏览器中。

当您说它与其他系统交互时,您是什么意思?如果您需要从小程序/浏览器连接到其他机器,请不要忘记 GWT 只是 JS,因此它具有相同的源策略来阻止此操作。有一些可能的解决方法,但这会花费您一些额外的工作。

【讨论】:

    【解决方案4】:

    我会建议您将 GWT 与一个好的 UI 库(例如 Ext-GWT,又名 GXT)结合使用。 我认为用一个好的 UI 库迁移并不是那么困难。 再见 克劳迪奥

    【讨论】:

      猜你喜欢
      • 2019-01-29
      • 2018-12-07
      • 2016-11-21
      • 1970-01-01
      • 2012-07-04
      • 1970-01-01
      • 2015-11-16
      • 1970-01-01
      • 2018-09-17
      相关资源
      最近更新 更多