从Seam 2切换到普通JavaEE 6,最大的变化(损失)可能是什么?



问题几乎说明了一切,尽管明确地说,我正在寻找在Java EE 6环境中我可能会错过的关于Seam 2的事情("损失")。

在我最近的(小)项目中,JavaEE 6或更具体地说,JSF 2是一个修复需求,所以使用Seam 2不是一个选择(也不会是)。尽管有些人说要让Seam 2与JSF 2一起工作,但我从来没有做到。到目前为止,我只使用了Seam 2,我担心切换到普通的JavaEE环境会带来比我目前意识到的更多的问题。

项目有以下基本/核心要求:

  • 基于角色和权限的安全概念(~50个用户)
  • JPA 2事务持久化

其余的将是基于gui的,搜索表单,客户端验证等,这些将由RichFaces 4和JavaEE 6 bean验证处理。没有web服务,没有restful url,没有消息传递,没有电子邮件。

我可以看到,使用Seam安全性肯定是一种损失,但我不确定Seam持久性、实体/查询框架、JBoss EL和其他将是什么,特别是整个编程模型(导航、EL、bean)。请注意,我们将能够在有意义的时候添加Seam 3模块,因此您可以在"增益"部分的讨论中包括Seam 3。

有谁能解释一下吗?(不必是一个完整的总结,你想到什么就写什么)

PS:我无法连接到Seam论坛,所以我觉得我需要在这里问。

我可以告诉你的是-具有各种Java EE 5/Seam 2和Java EE 6/Seam 3应用程序的背景:

没有什么是你不能用Java EE 6/Seam 3解决的,而且很多东西感觉更加成熟(例如,类型安全的CDI比Seam 2基于字符串的组件要好得多,JBoss AS 7 比所有其他版本都要好得多)。

但是:虽然Seam 2更像是您在企业web应用程序中可能遇到的所有需求的一站式解决方案,但是对于Java EE 6,您几乎肯定会从不同的模块中得到更多的困惑。

Seam 3是一个很好的开始,但它还不能完全用于生产,至少不是所有部分都可以。因此,您将不得不处理仍然需要解决的问题和异常。这当然是Seam 2的不同之处。X,那里的路感觉铺得很好。

Seam 2的集成导航/页面流概念没有等价的。您要么必须使用JSF 2导航,要么集成Drools或类似的东西——在您自己的

嵌套对话是Seam 2中您可能会喜欢的东西。在CDI中没有这样的东西-但是OpenWebBeans/CODI提供了一个很好的解决方案作为CDI扩展。

所有GUI的东西 (pdf,邮件,报告)都在Seam 3的道路上-但还没有100%准备好(2011年9月)。这将在下一次改变-但是现在,你正在进行alpha和beta测试。

说了这些,这是我的建议:

尽快切换到Java EE 6/CDI(这是有争议的)。这是这么多的未来。: -)

我也有同样的经历。在一些情况下,Java EE是不够的,而且它并没有打算做到这一点。所以有CDI扩展。几天前我得知其他人也有同样的经历:

Java EE所有你需要的

如果它太容易成为真的

如果你是一个Seam2用户,选择Seam3(我认为他们计划再次提供类似的东西-只是对话非常糟糕),并帮助他们获得稳定,添加你错过的功能,…或者切换到其他扩展。例如,我们更喜欢MyFaces CODI,因为它非常稳定和快速,而且他们的对话概念更好。还有一个非常开放的社区,他们也提供了很多帮助,听取意见,…

问题不是"什么",而是"什么时候可以扩展"。我想只要有人要求一个功能

最新更新