java.lang.IllegalStateException: impossible de trouver une sauvegarde pour la fabrique javax.faces.context.FacesContextFactory
J'ai créé mon hello world projet JSF, mais quand j'ai déployer pour Tomcat 7, j'obtiens cette exception:
java.lang.IllegalStateException: Could not find backup for factory javax.faces.context.FacesContextFactory.
at javax.faces.FactoryFinder$FactoryManager.getFactory(FactoryFinder.java:1135)
at javax.faces.FactoryFinder.getFactory(FactoryFinder.java:379)
at javax.faces.webapp.FacesServlet.init(FacesServlet.java:350)
at org.apache.catalina.core.StandardWrapper.initServlet(StandardWrapper.java:1284)
at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1197)
at org.apache.catalina.core.StandardWrapper.allocate(StandardWrapper.java:864)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:134)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:501)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:950)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:408)
at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1040)
at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:607)
at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:316)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
at java.lang.Thread.run(Thread.java:745)
J'ai ajouté ces Pots pour mon projet:
jstl-1.2.jar
javax.faces-api-2.2.jar
Comment est-il la cause et comment puis-je le résoudre?
source d'informationauteur Abdessamad BOUTGAYOUT
Vous devez vous connecter pour publier un commentaire.
Cette exception est plus facile à comprendre si vous remplacez le "backup" par "mise en œuvre". Il revient finalement à "j'ai trouvé le cadre du programme de l'API, mais nulle part un JSF impl dans le même classpath contexte où je l'ai trouvé dans le cadre du programme de l'API". En d'autres termes, vous avez une API JSF quelque part dans l'exécution de chemin de classe qui n'est pas accompagné de toute JSF impl. E. g. avoir un
jsf-api.jar
ou mêmejavaee.jar
sansjsf-impl.jar
oujavax.faces.jar
dans le même classpath contexte.Dans votre cas particulier,
La
javax.faces-api-2.2.jar
seul n'est pas droit. Il y a 2 problèmes:À la condition que vous souhaitez utiliser Mojarra, suivez les instructions d'installation dans son LISEZMOI. Dans votre cas particulier, de se débarrasser de cette
javax.faces-api-2.2.jar
et de mettre la dernièrejavax.faces-2.x.x.jar
dans/WEB-INF/lib
oupom.xml
et cette exception devrait disparaître.Voir aussi:
Besoin de changé le
weblogic-application.xml
de l'oreille projet deSuivante pot numéros de version doit correspondre exactement:
Grâce à Mon colleuge , @Lookub à stackoverflow ,il a ajouté un autre serveur apache et l'ensemble du port, car 8084 , le tout compilé. Comme ide, nous sommes à l'aide de netbeans 8.2.Vous pouvez le faire au Services>>Serveurs de menu . Espérons que cette aide.