Dans un contexte d’une application web : JSF1.2 avec RichFaces 3.3.1, Spring et JPA/Hibernate (et SpringWebflow),
… du très classique, …
sauf qu’on m’a soumit ce bug :
ATTENTION: JSF1059: WARNING! The com.sun.faces.verifyObjects feature is to aid developers not using tools. It shouldn''t be enabled if using an IDE, or if this application is being deployed for production as it will impact application start times. 26 mai 2009 20:45:48 org.apache.catalina.core.StandardContext listenerStart GRAVE: Exception lors de l'envoi de l'événement contexte initialise¿½ (context initialized) à l'instance de classe d’écoute (listener) com.sun.faces.config.ConfigureListener com.sun.faces.config.ConfigurationException: CONFIGURATION FAILED! null at com.sun.faces.config.ConfigManager.initialize(ConfigManager.java:212) at com.sun.faces.config.ConfigureListener.contextInitialized(ConfigureListener.java:174) at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:3843) at org.apache.catalina.core.StandardContext.start(StandardContext.java:4342) at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045) at org.apache.catalina.core.StandardHost.start(StandardHost.java:719) at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045) at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443) at org.apache.catalina.core.StandardService.start(StandardService.java:516) at org.apache.catalina.core.StandardServer.start(StandardServer.java:710) at org.apache.catalina.startup.Catalina.start(Catalina.java:578) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) Caused by: java.lang.NullPointerException at com.sun.faces.config.processor.ManagedBeanConfigProcessor.process( ManagedBeanConfigProcessor.java:241) at com.sun.faces.config.processor.AbstractConfigProcessor.invokeNext(AbstractConfigProcessor.java:94) at com.sun.faces.config.processor.ValidatorConfigProcessor.process(ValidatorConfigProcessor.java:107) at com.sun.faces.config.processor.AbstractConfigProcessor.invokeNext(/// at com.sun.faces.config.processor.AbstractConfigProcessor.invokeNext(AbstractConfigProcessor.java:94) at com.sun.faces.config.processor.FactoryConfigProcessor.process(FactoryConfigProcessor.java:132) at com.sun.faces.config.ConfigManager.initialize(ConfigManager.java:202) ... 16 more |
Et l’application ne s’affiche pas, sans aucune autre explication,
Ça laisse perplexe : les «bugs JSF sont connus pour leurs manques d’informations »
Mais,
En étudiant de très prés les librairies du projet on découvre l’existence de deux implémentations de JSF : celle de Sun et celle de Jboss.
Il suffit, alors, d’enlever le fichier « jsf-impl-1.2_06.jar », implémentation de JSF 1.2 par SUN, pour que le projet fonctionne sans aucun problème.
En fait, c’est très simple : les différentes implémentations de JSF ne cohabitent pas aussi pacifiquement qu’on pourrait penser ?
2 commentaires :
euh...c'est quoi l'interet d'avoir 2 implémentations JSF dans un même projet ?
en fait c'est quoi l'interet de JSF ?
l'intérêt de JSF est justement d'offrir une abstraction des composants WEB pour le développement ...
l'idéal c'est de choisir ses composants et de créer son application avec ...
Enregistrer un commentaire