Jsf 2 用JBoss4.x实现JSF2.0

Jsf 2 用JBoss4.x实现JSF2.0,jsf-2,jboss,jsf-1.2,Jsf 2,Jboss,Jsf 1.2,我目前正在为JBoss4.3.0中部署的应用程序将JSF版本从1.2升级到2.0。我还是JBoss的新手,遇到了这个问题。我已经下载了JSFJAR(impl和api),并将其放在jboss-web.deployer/JSF-libs下。我还将richfaces impl jar放在C:\Program Files\Java\richfaces-ui-3.3.3.Final\lib中 当我启动服务器时,控制台中没有任何错误,但我无法在站点中导航。Internet Explorer出现错误,提示“M

我目前正在为JBoss4.3.0中部署的应用程序将JSF版本从1.2升级到2.0。我还是JBoss的新手,遇到了这个问题。我已经下载了JSFJAR(impl和api),并将其放在jboss-web.deployer/JSF-libs下。我还将richfaces impl jar放在C:\Program Files\Java\richfaces-ui-3.3.3.Final\lib中

当我启动服务器时,控制台中没有任何错误,但我无法在站点中导航。Internet Explorer出现错误,提示“Mojarra未定义”。在比较JSF2.0 JAR版本和1.2版本的输出.html文件时,我注意到onclick属性中的函数在JSF2.0中有“mojarra.jsfcljs(document.getElementById)”,而在1.2中有“var b=function(){if(typeof jsfcljs='function'){jsfcljsf(document.getElementById)”


这个输出文件是如何生成的?如果我能让输出文件具有相同的功能,它会工作吗?如果不能,那么我如何解决“mojarra not defined”问题?我正在使用MyEclipse Enterprise Workbench 8.0版。任何帮助都将不胜感激。

JSF 2.0在Jboss 4.x甚至Jboss 5.x中都无法工作
您需要将Jboss升级到6.x或更高版本。您可以参考这一点。也就是说,可以通过将JAR放在Jboss lib文件夹中,使JSF 2.x在Jboss较低版本(如5.x)上运行。但是,不建议这样做,也不应该这样做。

JSF 2.0在Jboss 4.x甚至Jboss 5.x中都不起作用
您需要将Jboss升级到6.x或更高版本。您可以参考这一点。也就是说,可以通过将JAR放在Jboss lib文件夹中,使JSF 2.x在Jboss较低版本(如5.x)上运行。但是,不建议这样做,也不应该这样做。

我在Jboss 4.2.2上使用JSF 2的Mojarra实现

您需要在web.xml中指定:

<context-param>
  <param-name>org.jboss.jbossfaces.WAR_BUNDLES_JSF_IMPL</param-name>
  <param-value>true</param-value>
</context-param>

org.jboss.jbossfaces.WAR\u BUNDLES\u JSF\u IMPL
真的
您还需要在war jsf库中提供要使用的内容。
让我知道在JBoss4.3.0上是否可以

我在JBoss4.2.2上使用JSF2的Mojarra实现

您需要在web.xml中指定:

<context-param>
  <param-name>org.jboss.jbossfaces.WAR_BUNDLES_JSF_IMPL</param-name>
  <param-value>true</param-value>
</context-param>

org.jboss.jbossfaces.WAR\u BUNDLES\u JSF\u IMPL
真的
您还需要在war jsf库中提供要使用的内容。
让我知道它在Jboss 4.3.0上是否正常

嘿,谢谢!但它仍然不工作。仍然是相同的错误,Mojara没有定义。我更改了faces-config.xml的版本,从web.xml和faces-config.xml中注释掉了view_handler部分,并从web-INF\lib中删除了jsf-facelets.jar,现在当我开始转到url时,它给出了以下e错误:09:58:35026信息[STDOUT]09:58:35026错误[BaseXMLFilter]过滤器链javax.servlet.ServletException中的异常:Orchestra无法创建名为“AccessScopeManager”的bean实例。请确保JSF变量解析使用依赖项注入(DI)框架(例如Spring的DelegatingVariableResolver在您的faces-config.xml文件中)和标准的Orchestra配置bean是在javax.faces.webapp.FacesServlet.service(FacesServlet.java:325)中定义的(例如通过使用)好的,转到
\server\default\deploy\jboss web.deployer\conf
编辑web.xml文件。关于JSF
com.sun.faces.injectionProvider
org.jboss.web.JSF.integration.config.JBossJSFConfigureListener
com.sun.faces.application.WebappLifecycleListener
的注释行,并从您的web应用程序的web.xml
org.jboss.jbossfaces.WAR\u BUNDLES\u JSF\u IMPL
,也可以放在
server\default\deploy\jboss web.deployer\JSF libs
JSF jars中(别忘了用初始名称重命名jar)嘿,谢谢!但它仍然不起作用。还是同一个错误,Mojara没有定义。我更改了faces-config.xml的版本,从web.xml和faces-config.xml中注释掉了视图处理程序部分,并从web-INF\lib中删除了jsf-facelets.jar,现在当我开始转到url时,它会给出以下错误:09:58:35026 INFO[STDOUT]09:58:35026过滤器链javax.servlet.ServletException中的错误[BaseXMLFilter]异常:Orchestra无法创建名为“AccessScopeManager”的bean实例。请确保JSF变量解析使用依赖项注入(DI)框架(例如,Spring的DelegatingVariableResolver位于faces-config.xml文件中)在javax.faces.webapp.FacesServlet.service(FacesServlet.java:325)中定义了标准的Orchestra配置bean好的,转到
\server\default\deploy\jboss web.deployer\conf
编辑web.xml文件。关于JSF
com.sun.faces.injectionProvider
org.jboss.web.JSF.integration.config.JBossJSFConfigureListener
com.sun.faces.application.WebappLifecycleListener
的注释行,并从您的web应用程序的web.xml
org.jboss.jbossfaces.WAR\u BUNDLES\u JSF\u IMPL
,也可以放在
server\default\deploy\jboss web.deployer\JSF libs
JSF jars中(别忘了用初始名称重命名jar)