2012-09-18 16 views
6

Tengo una aplicación web en struts2 framework en NetBeans 7.0.1. estaba funcionando bien. Pero de repente, el Tomcat ha comenzado a dar el siguiente error:java.lang.ClassNotFoundException: com.sun.faces.config.ConfigureListener Error en la implementación en NetBeans 7.0.1

SEVERE: Error configuring application listener of class com.sun.faces.config.ConfigureListener 
java.lang.ClassNotFoundException: com.sun.faces.config.ConfigureListener 
    at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1676) 
    at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1521) 
    at org.apache.catalina.core.DefaultInstanceManager.loadClass(DefaultInstanceManager.java:415) 
    at org.apache.catalina.core.DefaultInstanceManager.loadClassMaybePrivileged(DefaultInstanceManager.java:397) 
    at org.apache.catalina.core.DefaultInstanceManager.newInstance(DefaultInstanceManager.java:118) 
    at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4660) 
    at org.apache.catalina.core.StandardContext$1.call(StandardContext.java:5226) 
    at org.apache.catalina.core.StandardContext$1.call(StandardContext.java:5221) 
    at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334) 
    at java.util.concurrent.FutureTask.run(FutureTask.java:166) 
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110) 
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603) 
    at java.lang.Thread.run(Thread.java:722) 

¿Algún consejo?

+0

posible DUP: http://stackoverflow.com/questions/11777844/java-lang-classnotfoundexception-com-sun-faces-config-configurelistener-when-us –

Respuesta

1

La biblioteca jsf-implementation no se encuentra en su aplicación (debe estar en WEB-INF \ lib \ directorio de la aplicación). Si está iniciando la aplicación desde Netbeans, esta biblioteca (jsf-impl.jar?) Está configurada en classpath del proyecto de Netbeans, por lo que no hubo ningún error.

+6

Pero no estoy utilizando cualquier JSF en mi solicitud –

+0

Do tienes otras aplicaciones implementadas en Tomcat? – tomi

+0

Funciona bien ahora. Desinstalé NetBeans con Tomcat e hice un nuevo proyecto. Pero aún no sé cuál fue exactamente la razón detrás del error –

9

Tenía el mismo problema. Usted probablemente utilizado NetBeans para Autoañadir esta dependencia con defecto 'compilar' alcance y se rompió Tomcat:

<dependency> 
     <groupId>javax</groupId> 
     <artifactId>javaee-api</artifactId> 
     <version>6.0</version> 
    </dependency> 

Uso proporcionó alcance como aquí https://stackoverflow.com/a/10156854/1051834 Si no ayuda a instalar un gato fresco y vuelva a implementar el proyecto, una vez más.

+0

Gracias, pero ¿por qué sucede esto? –

+1

@KorayTugay: javaee-api jar necesita jsf jar por lo que si agrega javaee-api jar en su proyecto, también debe agregar jsf jar. Por lo tanto, agregar jsf jars o eliminar javaee-api jar en tiempo de ejecución (dando el alcance provisto) resolverá este problema. El alcance "provisto" en maven significa que necesita el JAR para la compilación, pero en el tiempo de ejecución ya existe un JAR provisto por el entorno, por lo que no lo necesita empaquetado con su aplicación para que no se copie en la carpeta lib. –

3
<dependency> 
<groupId>com.sun.faces</groupId> 
<artifactId>jsf-impl</artifactId> 
<version>2.1.6</version> 

se trabaja para mí, puede cambiar la versión, ya que la liberación de nuevas versiones.

Cuestiones relacionadas