Abbiamo recentemente effettuato l'aggiornamento da WebSphere Portal v6.1 alla v7.0 e nel processo ora è disponibile JSF 1.2. Creazione di un nuovo progetto portlet nel Rad 8 crea un faces-config.xml con la seguente voceIl resolver variabile di tipo API è deprecato dopo JSF 1.1. Utilizzare invece el-resolver
<application>
<state-manager>com.ibm.faces.application.DevelopmentStateManager</state-manager>
<variable-resolver>com.ibm.faces.portlet.PortletVariableResolver</variable-resolver>
</application>
E poi si lamenta: Type API variabile resolver è deprecato dopo JSF 1.1. Utilizzare invece el-resolver.
Purtroppo non sono riuscito a trovare una risposta nelle pagine IBM che el-resolver usasse.
Edit:
System.out.println("Resolver: " + PortalUtil.getFacesContext().getApplication().getELResolver());
=> Resolver: [email protected]
Aggiunta di una voce in faces-config
<el-resolver>com.sun.faces.el.FacesCompositeELResolver</el-resolver>
Con o senza rimuovere il resolver variabile porta a:
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 con IBM aperto ...
Non è di aiuto? http://download.oracle.com/docs/cd/E17802_01/products/products/jsp/2.1/docs/jsp-2_1-pfd2/javax/el/ELResolver.html – Brad
Messaggio di avviso da RAD: Classe javax.el. ELResolver deve essere concreto (non astratto). – Stefan
Usiamo Spring, e c'è org.springframework.web.jsf.DelegatingVariableResolver. Funziona bene.Forse prova ad aggiungere una dipendenza per questo risolutore? Metti come org.springframework.web.jsf.DelegatingVariableResolver variable-resolver> –
JMelnik