Jsf PrimeFaces文件上载筛选器ClassNotFound异常

Jsf PrimeFaces文件上载筛选器ClassNotFound异常,jsf,file-upload,primefaces,Jsf,File Upload,Primefaces,我在运行JSF项目时出错。这是错误日志 org.apache.catalina.core.StandardContext filterStart SEVERE: Exception starting filter PrimeFaces FileUpload Filter java.lang.ClassNotFoundException: org.primefaces.webapp.filter.FileUploadFilter at org.apache.catalina.loader.

我在运行JSF项目时出错。这是错误日志

org.apache.catalina.core.StandardContext filterStart
SEVERE: Exception starting filter PrimeFaces FileUpload Filter
java.lang.ClassNotFoundException: org.primefaces.webapp.filter.FileUploadFilter
    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:527)
    at org.apache.catalina.core.DefaultInstanceManager.loadClassMaybePrivileged(DefaultInstanceManager.java:509)
    at org.apache.catalina.core.DefaultInstanceManager.newInstance(DefaultInstanceManager.java:137)
    at org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:260)
    at org.apache.catalina.core.ApplicationFilterConfig.<init>(ApplicationFilterConfig.java:107)
    at org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:4775)
    at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5452)
    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:1145)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
    at java.lang.Thread.run(Thread.java:724)

org.apache.catalina.core.StandardContext startInternal
SEVERE: Error filterStart
org.apache.catalina.core.StandardContext startInternal
SEVERE: Context [/Project] startup failed due to previous errors
org.apache.catalina.core.StandardContext filterStart
严重:启动筛选器PrimeFaces文件上载筛选器时出现异常
java.lang.ClassNotFoundException:org.primefaces.webapp.filter.FileUploadFilter
位于org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1714)
位于org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1559)
位于org.apache.catalina.core.DefaultInstanceManager.loadClass(DefaultInstanceManager.java:527)
位于org.apache.catalina.core.DefaultInstanceManager.loadClassMaybePrivileged(DefaultInstanceManager.java:509)
位于org.apache.catalina.core.DefaultInstanceManager.newInstance(DefaultInstanceManager.java:137)
位于org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:260)
位于org.apache.catalina.core.ApplicationFilterConfig.(ApplicationFilterConfig.java:107)
位于org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:4775)
位于org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5452)
位于org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
位于org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1559)
位于org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1549)
位于java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
在java.util.concurrent.FutureTask.run(FutureTask.java:166)中
位于java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
位于java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
运行(Thread.java:724)
org.apache.catalina.core.StandardContext startInternal
严重:错误筛选器开始
org.apache.catalina.core.StandardContext startInternal
严重:由于以前的错误,上下文[/Project]启动失败

我已经创建了一个用户库,添加了commons-fileupload-1.3.jar和commons-io-2.4.jar文件,但仍然存在错误。有什么想法吗?

我想你说的“用户库”是指特定于Eclipse的用户库管理。我还推测您已经安装了PrimeFaces,否则这是显而易见的先生的食物。如果缺少Commons FileUpload和/或Commons IO,它的
FileUploadFilter
将确实无法初始化。您应该在堆栈跟踪中看到一个
NoClassDefFoundError


仅仅创建一个新的“用户库”并添加到项目属性的构建路径并不完全正确。他们还需要在构建战争的
/WEB-INF/lib
中结束。通常,您还需要在项目属性的部署程序集部分添加用户库。然而,整个过程是不必要的笨拙。只需将这两个JAR文件放到动态WEB项目的
/WEB-INF/lib
文件夹中。Eclipse将自动执行所有必要的操作。您不需要修改项目的属性。为了避免冲突,请撤消您在生成路径中所做的所有更改。

您是对的,生成路径已出错。我删除了所有库并重新配置,现在一切都很好。谢谢