Java.lang.ClassNotFoundException: javax.servlet.JSP.jstl.core.Config [duplicate]

cette question a déjà une réponse ici:

quand je lance mon application après avoir entré L'URL, cette exception arrive.Je suis à l'aide de Eclipse et Tomcat7.0.35. J'ai aussi ajouté la Jstl.jar et jstl1.2.jar

mon code est

java.lang.ClassNotFoundException: javax.servlet.jsp.jstl.core.Config
    at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1714)
    at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1559)
    at org.apache.myfaces.view.jsp.JspViewDeclarationLanguage.buildView(JspViewDeclarationLanguage.java:91)
    at org.apache.myfaces.lifecycle.RenderResponseExecutor.execute(RenderResponseExecutor.java:78)
    at org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:241)
    at javax.faces.webapp.FacesServlet.service(FacesServlet.java:199)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123)
    at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171)
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99)
    at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:936)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407)
    at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1004)
    at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:589)
    at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:310)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
    at java.lang.Thread.run(Unknown Source)
39
demandé sur ROMANIA_engineer 2013-02-27 17:44:45

8 réponses

Téléchargez les pots suivants et ajoutez-les à votre répertoire WEB-INF/lib :

49
répondu Sudhakar 2015-06-24 13:53:40

l'erreur vous dit qu'il ne peut pas trouver la classe parce qu'elle n'est pas disponible dans votre application.

si vous utilisez Maven , assurez-vous que vous avez la dépendance pour jstl artefact:

<dependency>
      <groupId>javax.servlet</groupId>
      <artifactId>jstl</artifactId>
      <version>1.2</version>
</dependency>

Si vous ne l'utilisez pas, assurez-vous d'inclure le JAR dans le classpath. Voir cette réponse pour les liens de téléchargement.

62
répondu Raul Rene 2017-05-23 12:17:54

par défaut, le conteneur Tomcat ne contient aucune bibliothèque jstl. Pour le réparer, déclare jstl.jar dans votre pom Maven.fichier xml si vous travaillez dans Maven project ou si vous l'ajoutez à classpath de votre application

<dependency>
    <groupId>javax.servlet</groupId>
    <artifactId>jstl</artifactId>
    <version>1.2</version>
  </dependency>
6
répondu Sarath Kumar Sivan 2013-02-27 13:49:47

ajouter jstl jarre à votre classe d'application path.

3
répondu Nishant Shreshth 2013-02-27 13:47:47

probablement les bibliothèques jstl sont absentes de votre chemin de classe/non accessibles par tomcat.

vous devez ajouter au moins les fichiers jar suivants dans votre répertoire WEB-INF/lib :

  • jsf-impl.jar
  • JSF-api.jar
  • jstl.jar
2
répondu dan 2013-02-27 13:47:27

Juste un petit commentaire: parfois Maven ne copie pas la jstl-.jar au dossier WEB-INF même si le pom.xml a l'entrée.

j'ai dû copier manuellement le jar JSTL dans /WEB-INF/lib sur le système de fichiers. Qui a résolu le problème. Le problème peut être lié à Maven war packaging plugin.

1
répondu George 2014-02-17 19:56:51

ajouter bibliothèque JSTL comme dépendance à votre projet ( javax.servlet.jsp.jstl.core.Config fait partie de ce paquet). Par exemple , si vous utilisez Gradle , vous pouvez écrire dans un build.gradle:

dependencies {
    compile 'javax.servlet:jstl:1.2'
}
1
répondu naXa 2015-03-11 12:43:01

j'ai eu le même problème. Aller à Propriétés du projet - > déploiement Assemplblbly et ajouter JSTL jar

1
répondu José Manuel 2015-04-13 23:46:11