1

我正在为我们的应用程序创建升级路径,在此过程中出现了几个问题。我想,我的配置经常在这种情况下使用,所以也许有人以前经历过。

简短的应用说明:

  • JSF Web 应用程序
  • ICEfaces 作为 JSF 框架(实际版本 1.8.3 最新是 3.1)
  • Seam 作为 EJB/View 之间的连接(实际是 2.1.1,最新的是 2.2.2 或 3)
  • 部署在 JBoss 4.2.2.GA(最新是 7.1)
  • 通过 Hibernate/Seam EntityManager 连接数据库

首先应该升级什么?哪个更新可能甚至不需要?

这是我发现的:

  • ICEfaces 似乎几乎是无害的,只是更换 jars 并升级到 JSF 2,该应用程序已经使用 facelets 并且没有 JSP 应该使它更容易。尽管如此,它的工作,但似乎是直截了当

  • 像 Hibernate 这样的附加库随应用程序一起提供,但可以通过类加载集成到 JBoss 中,所以这应该不是什么大问题。

  • 由于 Seam3 似乎是一个新的实现,我想留在 2.X 上下文中。2.2.2 似乎是合理的并且存在迁移指南,但它似乎与 JBoss AS 紧密耦合。

这让我想到了主要问题:升级 JBoss

最新的 JBoss 版本是 7.1,我们使用的是 4.2.2。这是版本号上的一大步,它似乎是复杂的部分。此外,Seam 似乎对 JBoss 7 有一些问题。初步升级到 JBoss 6 似乎是介于两者之间的合理步骤,只是为了让一些东西更新一点。

这里有没有人进行了这么大的升级进度,可以给菜鸟一些提示?也许一些关于已知陷阱和要做的事情的提示(除了不断地对现有代码库进行测试)

而且,一般来说,在给定的 J2EE 上下文中,何时应该升级使用的库(撇开安全更新或主要错误修正)?

4

2 回答 2

1

如果您在升级 2.3 时遇到麻烦,它仍处于测试阶段(我上次听说是 beta2,可能支持 seam-gen),但具有 jsf2 的 2.2 的所有功能并在 jboss 7 上运行。从 2.1 升级到 2.2 并没有真正让你获得太多,2.2 没有太多工作就不能与 jboss7 一起使用,也没有 jsf2,尽管到 2.2/jboss5 更容易。

如果您正在考虑 Seam3,请阅读本文——改用 Java EE/CDI。
我会

开始学习 maven

使用 jboss 工具和 maven 插件将 eclipse 升级到至少 indigo

让 Jboss 7 启动并运行——它与 6 之前的版本完全不同,但让它运行相对容易,困难的部分是弄清楚现在一切都在哪里。

重新配置您的应用程序以使用 Maven

将 Seam 2.3 库添加到您的应用程序

无论是构建 - 修复 - 部署 - 修复

或者剥离您的应用程序直到它工作并一次添加组件。

Marek 的 2.3 博客在这里

祝你好运

于 2012-08-02T05:16:09.340 回答
0

选择“通过 Hibernate/Seam EntityManager 连接数据库”作为第一优先级,并测试数据库操作在 JBoss 7 上是否正确运行,因为 JBoss 7 与旧 JBoss 版本完全不同。并尝试“Seam 作为 EJB/View 之间的连接”部分。最后要更新的部分是“ICEfaces as JSF framework”。

于 2012-08-01T11:27:21.483 回答