Можно ли использовать MyFaces + CDI в WebLogic 12c?

Я пытался запустить эту настройку уже пару дней, но все равно не повезло. Вот'тестовое приложение ямы использовали:

@Named
@RequestScoped
public class Test {

    private String test = "test";
    public String getTest() { return test; }
    public void setTest(String test) { this.test = test; }
}

И на странице JSF:


Запуск этого примера без MyFaces работает нормально (рендертестовое задание" как и должно быть), но когда я развертываю MyFaces в файле WAR и выполняю необходимую настройку в weblogic.xml CDI, кажется, перестает работать (или, по крайней мере, интеграция между JSF и CDI), и ничего не отображается в выходном html. С MyFaces все в порядке, хотя.

Моя основная конфигурация следующая:

WebLogic Server 12c (12.1.1.0), патчи должны быть актуальными, так как я только что вчера загрузил версию для разработки, чтобы быть увереннымMyFaces-2.1.10, развернутый в WEB-INF / libsBeans.xml на местеorg.apache.myfaces.webapp.StartupServletContextListener был зарегистрирован в web.xmlWebLogic настроен на использование MyFaces с использованием weblogic.xml

Содержимое Weblogic.xml:


    javax.faces.*
    com.sun.faces.*
    com.bea.faces.*


    javax.faces.*
    com.sun.faces.*
    com.bea.faces.*
    META-INF/services/javax.servlet.ServletContainerInitializer
    META-INF/services/com.sun.faces.spi.FacesConfigResourceProvider

Что я'мы узнали до сих пор:

WL12c оснащен Weld 1.1.3, так какРеализация CDI.Я где-то читал (могуне помню где) что когда вы решите переключить реализацию JSF, вы 'Вы несете ответственность за интеграцию JSF / CDI самостоятельно. Это правда (надеюсь, что нет)?

Вещи, которые ямы уже пробовали:

Добавьте MyFaces CODI в смесь, надеясь, что это каким-то образом склеит Weld и MyFaces, но это не так.т.Замените Weld на OpenWebBeans в качестве реализации CDI. Сначала это работало, но позже появилось много интересных исключений ClassCastException в каком-то внутреннем пакете sun.reflection. Это решение, которое яЯ предпочел бы избежать в любом случае.Запустите Weld вручную, используя различные параметры в файлах web.xml и face-config.xml. Похоже, что это заставляет Weld работать, поскольку он заполняет журнал всеми видами сообщений об ошибках. В какой-то степени это может бытьфиксированный" путем обновления weblogic до новой версии Weld, но каждый раз, когда я делаю это, я сталкиваюсь с следующей ошибкой. Опять яЯ предпочитаю избегать и этого маршрута

Действительно ли так сложно использовать MyFaces на WL12c при сохранении поддержки CDI или я просто упускаю очевидное? Спасибо за любую помощь.

Ответы на вопрос(3)

Ваш ответ на вопрос