关于EAP 7的JSF 2.3

时间:2017-04-30 11:18:06

标签: jboss-eap-7 jsf-2.3

我想在Jboss EAP 7上升级到JSF 2.3。

我遵循了这个指南:

https://docs.jboss.org/author/display/WFLY10/JSF+Configuration#JSFConfiguration-ConfiguringaJSFapptouseanondefaultJSFimplementation

我按照本指南拆分了JSF 2.3 jar:

How to install one jar variant of JSF (javax.faces.jar) on WildFly

然而,当我启动EAP 7时,我收到此错误:

2017-04-30 12:55:00,280 WARN  (JSFDependencyProcessor.java:75) = WFLYJSF0005: Unknown JSF version 'mojarra-2.3.0'.  Default version 'mojarra-2.3.0' will be used instead.
2017-04-30 12:55:00,281 ERROR (ServiceControllerImpl.java:1955) = MSC000001: Failed to start service jboss.deployment.unit."monitoring.war".DEPENDENCIES: org.jboss.msc.service.StartException in service jboss.deployment.unit."monitoring.war".DEPENDENCIES: WFLYSRV0153: Failed to process phase DEPENDENCIES of deployment "monitoring.war"
    at org.jboss.as.server.deployment.DeploymentUnitPhaseService.start(DeploymentUnitPhaseService.java:154)
    at org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1948)
    at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1881)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
    at java.lang.Thread.run(Thread.java:745)
Caused by: org.jboss.as.server.deployment.DeploymentUnitProcessingException: WFLYJSF0014: Default JSF implementation slot 'mojarra-2.3.0' is invalid
    at org.jboss.as.jsf.deployment.JSFDependencyProcessor.deploy(JSFDependencyProcessor.java:80)
    at org.jboss.as.server.deployment.DeploymentUnitPhaseService.start(DeploymentUnitPhaseService.java:147)
    ... 5 more

有人成功将EAP 7升级到JSF 2.3吗?

1 个答案:

答案 0 :(得分:3)

我误读了放置所有必需罐子的地方。

例如,我放在文件夹中的模块javax.faces.api

EAP_HOME/modules/system/layers/base/javax/faces/api/JSF_IMPL

相反,它需要转到:

EAP_HOME/modules/javax/faces/api/JSF_IMPL

在指南中这样指定,但对于其他模块(Oracle JDBC Driver ...),我需要将内容直接放在基本文件夹下。显然,对于JSF,这需要位于modules文件夹的根目录中......

现在它已正确加载,当我使用LOG.info(FacesContext.class.getPackage().getImplementationVersion());时,它会打印2017-05-02 08:59:47,872 INFO (Web.java:66) = 2.3.0