ClassNotFoundException: com.sun.faces.config.ConfigureListener — развертывание jar-файлов на Tomcat, настроенное в Eclipse

У меня проблема очень похожа на эти:

  1. java.lang.ClassNotFoundException: com.sun.faces. config.ConfigureListener при использовании MyFaces с WASCE/Geronimo
  2. java.lang.ClassNotFoundException: com.sun.faces. config.ConfigureListener
  3. Ошибка с Jboss при развертывании веб-приложения jsp/servlet com.sun.faces.config.ConfigureListener Error

Мне удалось найти обходной путь, но проблема все еще не решена.

Когда я развертываю свое приложение на Tomcat 7.0.34, настроенном в Eclipse Juno Service Release 1 (идентификатор сборки: 20120920-0800), я получаю:

INFO: Starting Servlet Engine: Apache Tomcat/7.0.34
maj 22, 2013 5:10:34 PM org.apache.catalina.loader.WebappClassLoader validateJarFile
INFO: validateJarFile(C:\ProjName\Workspaces\projname-eclipse-ws\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps\4.0.1\WEB-INF\lib\javaee-api-6.0.jar) - jar not loaded. See Servlet Spec 2.3, section 9.7.2. Offending class: javax/servlet/Servlet.class
maj 22, 2013 5:10:34 PM org.apache.catalina.loader.WebappClassLoader validateJarFile
INFO: validateJarFile(C:\ProjName\Workspaces\projname-eclipse-ws\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps\4.0.1\WEB-INF\lib\javax.servlet-3.2-b05.jar) - jar not loaded. See Servlet Spec 2.3, section 9.7.2. Offending class: javax/servlet/Servlet.class
maj 22, 2013 5:10:36 PM org.apache.catalina.core.StandardContext listenerStart
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:1714)
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1559)
at org.apache.catalina.core.DefaultInstanceManager.loadClass(DefaultInstanceManager.java:532)
at org.apache.catalina.core.DefaultInstanceManager.loadClassMaybePrivileged(DefaultInstanceManager.java:514)
at org.apache.catalina.core.DefaultInstanceManager.newInstance(DefaultInstanceManager.java:133)
at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4727)
at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5285)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1559)
at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1549)
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)

Я проверил свой файл web.xml, и у меня нет записей, связанных с ConfigureListener.

У меня для javaee-api-6.0.jar и javax.servlet-3.2-b05.jar установлено значение предоставлено. Обходной путь заключается в том, что я удаляю обе банки из C:\ProjName\Workspaces\projname-eclipse-ws.metadata.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps\4.0.1\WEB. -INF\lib после развертывания приложения через Eclipse.

Мой вопрос: почему Eclipse развертывает эти jar-файлы на Tomcat, независимо от того, устанавливает ли их область действия provided? Есть ли другое место, которое контролирует развертывание банок?


person Adrian A.    schedule 23.05.2013    source источник


Ответы (1)


У вас был jar в вашей lib-faces-sources-1.2.0.09.jar?

если нет, то добавьте его в свой проект. вы можете скачать его отсюда - http://www.java2s.com/Code/Jar/c/Downloadcomspringsourcecomsunfacessources12009jar.htm

person Tej Kiran    schedule 23.05.2013