eclipse - integrar - java.lang.NoClassDefFoundError: org/springframework/context/ApplicationContext
spring jsf primefaces (5)
Asegúrese de que el classpath de su servidor haya incluido la biblioteca de Spring jar. Mire este enlace
He enfrentado problemas para implementar mi proyecto, que utilizo jsf / spring / hibernate como un faramework, he agregado los jar necesarios especialmente org.springframework.web-3.1.0.CI-1162, El error es:
SEVERE: Error configuring application listener of class org.springframework.web.context.ContextLoaderListener
java.lang.NoClassDefFoundError: org/springframework/context/ApplicationContext
at java.lang.Class.getDeclaredConstructors0(Native Method)
at java.lang.Class.privateGetDeclaredConstructors(Unknown Source)
at java.lang.Class.getConstructor0(Unknown Source)
at java.lang.Class.newInstance0(Unknown Source)
at java.lang.Class.newInstance(Unknown Source)
at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4150)
at org.apache.catalina.core.StandardContext.start(StandardContext.java:4705)
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:799)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:779)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:601)
at org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java:675)
at org.apache.catalina.startup.HostConfig.deployDescriptors(HostConfig.java:601)
at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:502)
at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1317)
at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:324)
at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:142)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1065)
at org.apache.catalina.core.StandardHost.start(StandardHost.java:840)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1057)
at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:463)
at org.apache.catalina.core.StandardService.start(StandardService.java:525)
at org.apache.catalina.core.StandardServer.start(StandardServer.java:754)
at org.apache.catalina.startup.Catalina.start(Catalina.java:595)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:289)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:414)
y la lista de jarras añadidas:
antlr-2.7.6.jar
commons-dbcb-1.4.jar
commons-collections-3.1.jar
commons-pool.1.6.jar
commons-logging-1.1.jar
dom4j-1.6.1.jar
hibernate3.jar
hibernate-jpa-2.0-api-1.0.1.Final.jar
iText-5.0.4.jar (Para Primeras)
javassist-3.9.0.GA.jar
com.springsource.org.jboss-el-2.0.0.GA.jar (Opcional para ejecutarse en Tomcat 6)
jsf-api.jar (Mojarra 2.0.4)
jsf-impl.jar (Mojarra 2.04)
jta-1.1.jar
log4j-1.2.11.jar
mysql-connector-java-5.0.5.jar (para MySQL)
org.springframework.aop-3.1.0.CI-1162.jar
org.springframework.asm-3.1.0.CI-1162.jar
org.springframework.aspects-3.1.0.CI-1162.jar
org.springframework.beans-3.1.0.CI-1162.jar
org.springframework.context-3.1.0.CI-1162.jar
org.springframework.context.support-3.1.0.CI-1162.jar
org.springframework.core-3.1.0.CI-1162.jar
org.springframework.expression-3.1.0.CI-1162.jar
org.springframework.jdbc-3.1.0.CI-1162.jar
org.springframework.orm-3.1.0.CI-1162.jar
org.springframework.oxm-3.1.0.M1.jar
org.springframework.transaction-3.1.0.CI-1162.jar
org.springframework.web-3.1.0.CI-1162.jar
org.springframework.web.portlet-3.1.0.M1.jar
org.springframework.web.servlet-3.1.0.CI-1162.jar
poi-3.2-FINAL-20081019.jar (Para Primeras)
Primefaces-3.5jar
slf4j-api-1.6.1.jar
slf4j-jdk14-1.6.1.jar
qlfj4-log4j12-1.6.4.jar
En mi situación, utilizo maven para construir el proyecto, solo porque el archivo war no se crea correctamente, dará lugar a esta excepción. Verifico el archivo war y ejecuto install nuevamente, eso resuelve mi problema.
Para este error, puede haber diferentes soluciones. Anoté los que me funcionaron.
Solución 1. Esto siempre ocurre en el entorno de despliegue y depuración. En el entorno de despliegue, solo asegúrese de que la classpath de su servidor haya incluido la biblioteca Spring jar (por ejemplo, spring-4.0.4.jar).
En el entorno de depuración, los pasos pueden variar desde diferentes IDE, pero la solución es la misma. En Eclipse, los desarrolladores usualmente crearán un tomcat, jboss ... cualquiera que sea el servidor de aplicaciones para la depuración, solo asegúrese de que se incluyan los Spring Jars correctos.
- Haga doble clic en su servidor de depuración
- Haga clic en "Abrir configuración de inicio" para acceder al entorno del servidor
- Haga clic en la pestaña classpath
- Incluya el archivo jar de Spring aquí, también puede requerir un contenedor de registro común debido a la dependencia de Spring.
- Hecho, ejecuta tu aplicación nuevamente.
.
Solución 2. Si está utilizando Maven como una herramienta de compilación y está descargando dependencias al usarlo, puede haber algún conflicto de jar. Debido a que los servidores Tomcat normalmente proporcionan algunos contenedores como servlet-api y jpa-api. Entonces, si los incluyes nuevamente usando maven; Habrá problemas para identificarlos.
Solución 3. Si usa Eclipse como su IDE y usa Maven como su herramienta de compilación y tomcat como su servidor; recuerde que el servidor Tomcat no mirará los frascos que están dentro de las carpetas. Para eso hay un pequeño truco,
- Haga clic derecho en su proyecto y seleccione propiedades
- En la ventana que se muestra, seleccione Ensamblaje de despliegue
- Seleccione Agregar
- Añadir dependencias Maven
- Haga clic en Aplicar y haga clic en Aceptar
Espero que una de estas soluciones lo ayude a resolver su problema. Happy Coding y asegúrese de que esté usando Java.
Te sugiero que reemplaces todos los frascos de Spring con la versión más actualizada (3.2.2.RELEASE)
Tienes que descargar el archivo jar necesario. Puede descargar el archivo spring-context.jar desde el siguiente enlace
http://mvnrepository.com/artifact/org.springframework/spring-context/3.2.2.RELEASE