在 JBoss 5.1.1 上将 JSF 从 1.2 升级到 2.1
Posted
技术标签:
【中文标题】在 JBoss 5.1.1 上将 JSF 从 1.2 升级到 2.1【英文标题】:Upgrading JSF from 1.2 to 2.1 on JBoss 5.1.1 【发布时间】:2013-04-15 10:12:18 【问题描述】:我正在尝试将我的 webapp 从 JSF 1.2 升级到 JSF 2.1。 这是我现在正在运行的:
| Item | Version |
| ----- | ----------- |
| JBoss | 5.1.1 (EAP) |
| Seam | 2.2.1 (EAP) |
| JSF | 1.2 |
我想升级到 JSF 2.1。这是我目前正在尝试切换到的内容:
| Item | Version |
| ----- | ----------- |
| JBoss | 5.1.1 (EAP) |
| Seam | 2.3.0 (EAP) |
| JSF | 2.1 |
我在 war 文件中包含了来自 SEAM 2.3.0 包的以下 jar:
jboss-jsf-api_2.1_spec.jar
jsf-impl.jar
JBoss目录下的jsf jars有:
./server/default/deploy/jbossweb.sar/jsf-libs/jsf-api.jar
./server/default/deploy/jbossweb.sar/jsf-libs/jsf-impl.jar
当我使用我的应用程序时,似乎 JSF 2.1 运行良好,但在启动时,我在服务器日志中看到以下行:
2013-04-22 08:33:50,044 INFO [javax.enterprise.resource.webcontainer.jsf.config] (main) Initializing Mojarra (1.2_13-b01-FCS) for context '/myapp'
2013-04-22 08:34:06,811 INFO [javax.enterprise.resource.webcontainer.jsf.lifecycle] (main) JSF1027: [null] The ELResolvers for JSF were not registered with the JSP container.
问题
为什么是Initializing Mojarra (1.2_13-b01-FCS)
?它只是在启动时显示,然后在运行时切换到使用 JSF 2.1?
如果我将./server/default/deploy/jbossweb.sar/jsf-libs/
下的 2 个 jar 换成 jsf 2.1 jar,我会得到 Initializing Mojarra 2.1.7 (SNAPSHOT 20120206)
。但是,jboss 附带的包都以 ClassNotFoundExceptions 失败。
在我的应用程序使用 JSF 2.1 时,是否有某种方法可以让所有 jboss 可部署项(例如 jbossweb.sar
)继续使用 JSF 1.2?
有没有办法让我的应用在运行时吐出 JSF 版本?
The ELResolvers for JSF were not registered with the JSP container.
INFO 消息是怎么回事?
我的应用总是在启动时记录该消息。
【问题讨论】:
这有帮助吗? ***.com/questions/10517000/… 没有。我将新的 context-param 条目添加到我的 web.xml,重新打包并重新部署。它对我 server.log 中显示的版本没有影响 你有没有想过这个问题? 【参考方案1】:在 JBoss 5.1.1 EAP 上,我已将 JSF 1.2 升级到 JSF 2.1(Mojarra 实现)。
我的经验与这篇法语文章有关:http://javaetmoi.com/2014/06/notes-migration-jsf2-richfaces4-jboss5-eap/ (Google translate is your friend)
您将学习如何卸载 JSF 1.2。 JSF 2.1 嵌入到您的 WAR/EAR 的 lib/ 文件夹中。 它工作正常:
20:52:19,534 INFO [config] Initialisation de Mojarra 2.1.19 ( 20130213-1512 https://svn.java.net/svn/mojarra~svn/tags/2.1.19@11614) pour le contexte «/richfaces-showcase» - See more at: http://javaetmoi.com/2014/06/notes-migration-jsf2-richfaces4-jboss5-eap/#sthash.fDmunAGP.dpuf
【讨论】:
以上是关于在 JBoss 5.1.1 上将 JSF 从 1.2 升级到 2.1的主要内容,如果未能解决你的问题,请参考以下文章
在 Jboss 上使用 ISO-8859-1 编码和 JSF 2
@Named + @RequestScoped 在 JSF 2.0 和 JBoss 7.1.1 中不起作用