Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/354.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
企业web应用程序中的JavaFX-是经典web页面的良好替代品?_Java_Web Applications_Jakarta Ee_Javafx 2 - Fatal编程技术网

企业web应用程序中的JavaFX-是经典web页面的良好替代品?

企业web应用程序中的JavaFX-是经典web页面的良好替代品?,java,web-applications,jakarta-ee,javafx-2,Java,Web Applications,Jakarta Ee,Javafx 2,我们为不同的客户开发了几个web应用程序,从为那些可怜的管理员开发的简单的、看起来很枯燥的、CRUD风格的GUI,到为那些互联网用户开发的schmancy AJAX增强型GUI。所有这些都是基于JSF1.2并结合JBossSeam2,使用Facelets和RichFaces作为表示层 我们确实知道JSF 1.2的局限性,而且(我对此感到难过)我们还没有成功地过渡到Java EE 6,但是通过将此设置定义为我们的技术堆栈,我们获得了一些使用该技术的经验,能够为我们的客户可靠地开发web应用程序 那

我们为不同的客户开发了几个web应用程序,从为那些可怜的管理员开发的简单的、看起来很枯燥的、CRUD风格的GUI,到为那些互联网用户开发的schmancy AJAX增强型GUI。所有这些都是基于JSF1.2并结合JBossSeam2,使用Facelets和RichFaces作为表示层

我们确实知道JSF 1.2的局限性,而且(我对此感到难过)我们还没有成功地过渡到Java EE 6,但是通过将此设置定义为我们的技术堆栈,我们获得了一些使用该技术的经验,能够为我们的客户可靠地开发web应用程序

那我为什么要告诉你?因为我们体验到越来越多的客户听说了“Web 2.0”,他们希望拥有富客户机功能,同时只接受浏览器作为所有应用程序的门户。尽管我们知道我们使用的技术可以做到这一点,但我们觉得,在客户端使用不同的东西来支持这些需求可能是个好主意。由于我们大多是Java程序员,我们一直用他的AdobeFlex来赶走这个家伙,我们认为,JavaFX的新版本可能是一件好事

在我能找到的JavaFX资源的深处,我的双手疼痛不已——但我经常想到的一件事是,JavaFX呈现出一种技术,它能够产生一些很好的图形效果,但尽管反弹彩色阴影泡泡看起来很酷,它们在业务应用程序中基本上是无用的

好吧,长话短说——我们喜欢在后端使用JavaEE6,同时在客户端拥有丰富而美观的功能。在开发商业web应用程序时,JavaFX是否是经典web页面,甚至是即将推出的现代HTML5页面的良好替代品?在哪里可以找到这样的示例


感谢您花时间阅读本文并给出希望出现的答案。

我会选择HTML5,除非我有一些web应用程序无法满足的需求

我相信你可以用JavaFX构建很棒的应用程序,但是除了标准的Java工具外,工具很少。而且由于它没有得到广泛的应用,你将很难找到支持,也很难雇佣到擅长这项技术的人。还有一个风险就是它会像.Net的Silverlight一样被扔进垃圾桶(甲骨文并不感情用事)。至于Flex


将其与HTML5进行比较。它不仅得到了更广泛的应用(这意味着您将能够找到支持并更轻松地进行招聘),而且还不断获得更多支持、更好的工具和新功能。我认为这很明显,哪一个更能证明未来。

您可能想看看JavaFX样本包中的DataApp样本

这是一个在浏览器中使用JavaFXUI的企业应用程序示例。它将为您提供一个很好的示例,可以在JavaFX上为企业客户机制作

您可能需要花费一些时间来为这个示例安装MySQL、EE和其他东西(非常简单,只需遵循提供的自述),但您将看到如何从DB到客户端UI处理完整的堆栈

第一个屏幕的小屏幕截图:

您会发现JavaFX的“企业端”的大多数示例都是JavaFX客户端通过RESTful Web服务与后端对话

但是,JavaWebStart是一项很酷的技术。使用它,您将通过您的网站启动一个应用程序客户端,该客户端将自动更新为最新版本,并自动从服务器下载所有新的依赖项。您甚至可以进行依赖注入,并向服务器端资源注入客户端本地代理;企业JavaBeans、JMS管理对象等等

这是一项非常有用的技术,它可以让您的客户机以多种方式与服务器对话,而不仅仅是使用HTTP有线web服务。然而,JavaFX阻止了这种模式。在EAR包中嵌入JavaFX应用程序客户机并让其使用依赖项注入并不是一种简单的方法。但我找到了一个非常直观且易于复制的解决方案。因此,为了给您提供另一个JavaFX应用程序作为后端远程GUI的示例,请参阅我的教程:


我认为它更像是“经典Swing或.NET表单应用程序”的替代品。当然,它是一种替代品(今天更是如此)。对于简单的web用例,尤其是在部署非常复杂的情况下,它不是最佳的选择(提示:通常使用“企业”,由于内部控制,部署相对容易)。但对于复杂的用例或高度标准化的环境,它肯定是可用的。Flex在当时是很棒的(最好的,很容易的)(Java开发人员也很容易学习…),直到苹果毁了Flash,所以事后来看FX是一个很好的选择——现在内置到JDK中了……是的,我也考虑过使用HTML5,原因与您所说的相同。我还没有深入研究过它-但既然HTML5仍然是一种标记语言而不是编程语言-那么你在客户端代码开发中实际使用的是什么-上面有很多框架的JavaScript?是的,JavaScript和jQuery是客户端web编程的标准。如果你真的不想写JS,大多数Java web框架(包括JSF)都可以生成大量Javascript来帮助你。这不是问题的答案,而是推销。你们这些网络人是无耻的。请停止试图“杀死”其他技术,呆在你自己的半功能碎片沙箱里。@Manius“No”是“X是Y的好替代品”的一个完全正确的答案。但是谢谢你提醒我注意这个问题,它应该作为离题而关闭。“要求我们推荐或查找书籍、工具、软件库、教程或其他非即时信息的问题