首页 > 解决方案 > EE4J , JSF 规范 , MyFaces 和未来方向

问题描述

在 JSF 2.3 之前,mojarra(参考实现)和 myfaces 都是基于 JSR 规范文档的。

迁移到 EE4J:

  1. 会有任何等效的规范文件吗?
  2. 它如何影响其他实现的未来(jsf 的 myfaces)?
  3. 未来的 mojarra 和 myfaces 是否仍然兼容,以便我们可以在其中任何一个上运行应用程序?(应用服务器提供的实现 - WAS = myfaces & glassfish = mojarra)
  4. 它会对依赖底层实现的 Primefaces、Bootsfaces 等组件框架产生什么影响?

标签: jsfmyfacesmojarra

解决方案


2018 年 8 月 19 日更新: Guillermo González de Agüero 最近在 Jaxenter.com 接受了采访,解决了您的一些问题。特别是,他有点担心甲骨文不会开源规范文档。这将阻止简单地将这些文档作为新规范文档的基础。

2018 年 8 月 17 日更新:在写下我的初步答案后,我联系了一些领先的 ​​JSF 开发人员(请参阅Twitter 上的讨论)。有计划清除过时的 API,例如删除旧的 JSF ManagedBeans 以支持 CDI。所以会有 API 变化,但我不认为这是值得担心的事情。我相信会有一个平滑的升级路径。

对未来做出预测总是很困难的。然而,我比大多数人更接近规范团队中的人,所以我可以做出一些有根据的猜测。

  1. EE4J 是 Eclipse 基础生态系统的一部分,所以我确信会有一个定义良好的规范过程和大量文档。我几乎可以肯定会有一份详细的规范文件,但要持保留态度——我不是知情人。(另见上面的更新——目前,JavaEE 的规范文档受版权保护,似乎不太可能将它们捐赠给 Eclipse 基金会)。

  2. 据我所知,对 MyFaces 的影响不大。他们只需要遵循不同的规范文件。

  3. 肯定是的。MyFaces 是一个积极开发的项目,旨在成为 Mojarra 的插件替代品。这不会因为参考实现从一家大公司转到 Eclipse 基金会而改变。

  4. PrimeFaces 和 BootsFaces 不会有太大影响。这两个项目都将与 Mojarra 和 MyFaces 以及每个当前版本的 JSF 保持兼容。还有其他 JSF 库,例如 HighFaces,它们依赖于 Mojarra 的内部 API。但即使在这种情况下,也不会有太大变化。

无论如何,我预计 JSF API 不会在不久的将来发生重大的重大变化(除了清除过时的 API,例如放弃对“ManagedBean”的支持)。Java 世界的强项一直是向后兼容。但同样,这只是一个有根据的猜测,所以要持保留态度。


推荐阅读