EAP 7 上的 JSF 2.3
JSF 2.3 on EAP 7
我想在 Jboss EAP 7 上升级到 JSF 2.3。
我遵循了这个指南:
我按照本指南拆分了 JSF 2.3 jar:
但是,当我启动 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 吗?
我误读了放置所有需要的罐子的地方。
比如模块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,这需要位于模块文件夹的根目录中...
现在它已正确加载,当我使用 LOG.info(FacesContext.class.getPackage().getImplementationVersion());
时它会打印 2017-05-02 08:59:47,872 INFO (Web.java:66) = 2.3.0
我想在 Jboss EAP 7 上升级到 JSF 2.3。
我遵循了这个指南:
我按照本指南拆分了 JSF 2.3 jar:
但是,当我启动 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 吗?
我误读了放置所有需要的罐子的地方。
比如模块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,这需要位于模块文件夹的根目录中...
现在它已正确加载,当我使用 LOG.info(FacesContext.class.getPackage().getImplementationVersion());
时它会打印 2017-05-02 08:59:47,872 INFO (Web.java:66) = 2.3.0