JSF 2.3 на EAP 7

Я хотел бы перейти на JSF 2.3 на Jboss EAP 7.

Я следовал этому руководству:

https://docs.jboss.org/author/display/WFLY10/JSF+Configuration

Я разделил банку JSF 2.3, следуя этому руководству:

Как установить один jar-вариант JSF (javax.faces.jar) на 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 ответ

Решение

Я сделал ошибку, неправильно прочитав место, где поставить все необходимые банки.

Например, модуль 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

Другие вопросы по тегам