Я переношу приложения с WebSphere 7.0 на WebSphere 8.5. WebSphere 8.5 использует более старую версию MyFaces (2.0.2), чем используемая нами (2.0.7), поэтому я попытался настроить более новую версию так же, как и в WAS 7.0, то есть с помощью разделяемой библиотеки эм>.
Я настроил общую библиотеку со следующими банками:
myfaces-api-2.0.7.jar
myfaces-impl-2.0.7.jar
commons-logging-1.1.1.jar
commons-digester-1.8.jar
commons-collections-3.2.jar
commons-codec-1.3.jar
Я проверил вариант Use an isolated class loader for this shared library
. У меня ошибка:
com.ibm.ws.webcontainer.webapp.WebApp logServletError SRVE0293E: [Ошибка сервлета]-[Faces Servlet]: java.lang.IllegalStateException: для этого приложения не настроены фабрики. Это происходит, если инициализация лиц вообще не работает - убедитесь, что вы правильно включили все параметры конфигурации, необходимые для базового приложения лиц, и что включены все необходимые библиотеки. Также проверьте выходные данные журнала вашего веб-приложения и вашего контейнера на наличие каких-либо исключений! Если вы это сделали и ничего не нашли, ошибка может быть связана с тем, что вы используете какие-то специальные веб-контейнеры, которые не поддерживают регистрацию прослушивателей контекста через файлы TLD, и в вашем web.xml не настроен прослушиватель контекста. Типичный конфиг выглядит так;
<listener>
<listener-class>org.apache.myfaces.webapp.StartupServletContextListener</listener-class>
</listener>
в javax.faces.FactoryFinder.getFactory(FactoryFinder.java:196) в javax.faces.webapp.FacesServlet.init(FacesServlet.java:112) в com.ibm.ws.webcontainer.servlet.ServletWrapper.init(ServletWrapper.java :337)
Та же конфигурация работала на WAS 7.0, за исключением того, что в общей библиотеке был настроен дополнительный jar:
C:\IBM\SDP\runtimes\base_v7\OptionalLibraries\IBM\JSFProviders\WebSphere-MyFaces20-annotation-provider.jar
Что здесь не так? Нужно ли указывать что-то вместо этого WebSphere-MyFaces20-annotation-provider.jar
? Мне не удалось найти ни одного примера настройки такой общей библиотеки для WAS 8.5. Есть только что для WAS 7.0, что Я успешно использовал на WAS 7.0.