java.lang.NoClassDefFoundError: javax/servlet/jsp/jstl/core/Config

Estoy desarrollando una aplicación para FB Login con sitio web con Javascript y JSF. Me han publicado mi código en aquí. El problema es que cuando ejecuto mi aplicación no mostrar la página JSF, se lanza la excepción siguiente:

Nov 28, 2013 7:21:46 PM org.apache.catalina.core.StandardWrapperValve invoke
SEVERE: Servlet.service() for servlet [Faces Servlet] in context with path [/FacebookLogin] threw exception [javax/servlet/jsp/jstl/core/Config] with root cause
java.lang.NoClassDefFoundError: javax/servlet/jsp/jstl/core/Config
    at com.sun.faces.application.view.JspViewHandlingStrategy.executePageToBuildView(JspViewHandlingStrategy.java:344)
    at com.sun.faces.application.view.JspViewHandlingStrategy.buildView(JspViewHandlingStrategy.java:153)
    at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:99)
    at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)
    at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:139)
    at javax.faces.webapp.FacesServlet.service(FacesServlet.java:594)
    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:953)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:408)
    at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1023)
    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)

¿Cuál es el problema y cómo puedo solucionarlo?

OriginalEl autor Wanna Coffee | 2013-11-28

2 Kommentare

  1. 23

    java.lang.NoClassDefFoundError: javax/servlet/jsp/jstl/core/Config

    Como el nombre del paquete de sugerencias, el mencionado clase es parte de JSTL. La excepción está diciendo claramente que el archivo de definición de clase de la mencionada clase no se encuentra en la ruta de clases en tiempo de ejecución. I. e. el Config.class archivo o, al menos, el archivo JAR que contiene la clase que falta en webapp tiempo de ejecución de la ruta de clases.

    JSTL es normalmente proporcionado ya fuera de la caja por una de pleno derecho de Java EE como el recipiente TomEE, JBoss as/EAP/WildFly, Payara/GlassFish, WebLogic, etc, pero no por simple JSP/Servlet recipientes, tales como Tomcat y Embarcadero. Para ellos, sería necesario el suministro de JSTL, junto con la aplicación web de mismo, exactamente igual a como lo harías para JSF (que también es proporcionado ya fuera de la caja por completo de Java EE contenedores).

    Se encuentra en esta excepción porque Facelets tiene para su <c:xxx> etiquetas una dependencia en el JSTL implementación archivo JAR, mientras que usted está usando Tomcat que no llega con JSTL fuera de la caja. JSTL es como una biblioteca independiente disponible en sabor de jstl-1.2.jar. Sólo tienes que descargar y colocar en su webapp del /WEB-INF/lib carpeta, junto con el JSF archivo JAR(s) que ya están allí, y esta excepción debe desaparecer. Maven usuarios pueden lograr mediante la adición de la siguiente dependencia (y realizar una reconstrucción completa/volver a implementar):

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

    Alternativamente, basta con sustituir Tomcat por un verdadero contenedor Java EE.

    Véase también:

    Sí, La excepción, el problema ha sido resuelto. Pero, todavía el FB_icon no mostrar en mi página web.!! Es la visualización de la tabla con el botón perfectamente. ¿cuál podría ser el problema aquí? ¿Cómo puedo obtener? Me han publicado mi código en la pregunta anterior, sólo tienes que seguir el enlace que puedo ofrecer en mi pregunta. Para su referencia, la pegué aquí también. por favor, eche un vistazo. «stackoverflow.com/questions/20263746/…«
    Eres bienvenido. Simplemente haga clic en «hacer una Pregunta» botón en la parte superior derecha con el fin de hacer una nueva pregunta y ser capaz de obtener una respuesta a eso. Este nuevo problema es totalmente ajena al problema actual. Pregúntale acerca de un problema en un momento. Usted finalmente va a llegar. Es ineficiente para usted, a mí y a los futuros usuarios que enfrentan el mismo problema para mezclarse completamente diferentes problemas en una sola pregunta. Se pierde la visión general y haría respuestas mucho más difícil de encontrar, como usted probablemente ya tiene experiencia al vadear a través de un tema de un antiguo foro de discusión en una búsqueda de respuestas.
    El jstl-1.2.jar enlace de descarga está roto.
    Corregido, gracias. También se podría haber encontrado en la página detrás de la primera JSTL enlace en mi respuesta.

    OriginalEl autor BalusC

  2. 1

    Solo quiero añadir mi contribuyan si alguien consigue este error al tratar de crear un springframework-4.0.7 de LIBERACIÓN del módulo para jboss-eap-6.4.0.GA. Mi module.xml ahora contiene:

    <dependencies>
        ...
        <!-- Contains javax.servlet.jsp.jstl.core.Config -->
        <module name="javax.servlet.jstl.api"/>
        ...
    </dependencies>
    Gracias por la actualización..

    OriginalEl autor vault

Kommentieren Sie den Artikel

Bitte geben Sie Ihren Kommentar ein!
Bitte geben Sie hier Ihren Namen ein

Pruebas en línea