Недавно мы обновили версию WebSphere Portal v6.1 до версии 7.0, и теперь у нас есть JSF 1.2. Создание нового портлета проекта в Rad 8 создает рожи-config.xml со следующей записьюТип API переменной-резольвер устарел после JSF 1.1. Вместо этого используйте el-resolver
<application>
<state-manager>com.ibm.faces.application.DevelopmentStateManager</state-manager>
<variable-resolver>com.ibm.faces.portlet.PortletVariableResolver</variable-resolver>
</application>
А потом жалуется: Тип API переменного распознаватель осуждаются после JSF 1.1. Вместо этого используйте el-resolver.
К сожалению, я не смог найти ответ на страницах IBM, для которых используется el-resolver.
Редактировать:
System.out.println("Resolver: " + PortalUtil.getFacesContext().getApplication().getELResolver());
=> Резольвер: [email protected]
Добавление записи в конфигурации граней-
<el-resolver>com.sun.faces.el.FacesCompositeELResolver</el-resolver>
С или без удаления переменный-резольвер приводит к:
java.lang.IllegalStateException: Application was not properly initialized at startup, could not find Factory: javax.faces.context.FacesContextFactory
at javax.faces.FactoryFinder.getFactory(FactoryFinder.java:270)
at javax.faces.webapp.FacesServlet.init(FacesServlet.java:164)
at com.ibm.ws.webcontainer.servlet.ServletWrapper.init(ServletWrapper.java:358)
... 89 more
PMR с IBM открыт ...
Разве это не поможет? http://download.oracle.com/docs/cd/E17802_01/products/products/jsp/2.1/docs/jsp-2_1-pfd2/javax/el/ELResolver.html – Brad
Предупреждающее сообщение от RAD: Класс javax.el. ELResolver должен быть конкретным (не абстрактным). – Stefan
Мы используем Spring, и существует org.springframework.web.jsf.DelegatingVariableResolver. Он работает нормально.Может быть, попробуйте добавить зависимость для этого резольвера? Положите его как org.springframework.web.jsf.DelegatingVariableResolver variable-resolver> –
JMelnik