使用myfaces组件在JSF中上传文件

时间:2011-01-08 07:05:50

标签: jsf

我正在创建一个需要文件上传功能的JSF应用程序。我在/ WEB-INF / lib文件夹中添加了所有必需的jar文件。

jsf-api.jar
jsf-impl.jar
jstl.jar
standard.jar
myfaces-extensions.jar
commons-collections.jar
commons-digester.jar
commons-beanutils.jar
commons-logging.jar
commons-fileupload-1.0.jar

但仍然在尝试在apache 6.0.29上部署应用程序时,我收到以下错误。

org.apache.catalina.core.StandardContext
addApplicationListener
INFO: The listener "com.sun.faces.config.ConfigureListener" is already
configured for this context. The duplicate definition has been ignored.
 org.apache.catalina.core.StandardContext start
SEVERE: Error listenerStart
PM org.apache.catalina.core.StandardContext start
SEVERE: Context [/jsfApplication] startup failed due to previous errors
 org.apache.catalina.loader.WebappClassLoader
clearReferencesJdbc
 The web application [/jsfApplication] registered the JBDC driver
[com.mysql.jdbc.Driver] but failed to unregister it when the web
application was stopped. To prevent a memory leak, the JDBC Driver has been
forcibly unregistered.
 org.apache.catalina.loader.WebappClassLoader
clearReferencesThreads
SEVERE: The web application [/jsfApplication] appears to have started a thread
named [Timer-0] but has failed to stop it. This is very likely to create a
memory leak.
 org.apache.catalina.loader.WebappClassLoader
clearReferencesThreads
SEVERE: The web application [/jsfApplication] appears to have started a thread
named [MySQL Statement Cancellation Timer] but has failed to stop it. This
is very likely to create a memory leak.
log4j:ERROR LogMananger.repositorySelector was null likely due to error in
class reloading, using NOPLoggerRepository.

我也在使用hibernate和spring框架来使用这个应用程序。

请帮忙。

感谢,

更新

这是我将myFaces-extension.jar文件添加到/ WEB-INF / lib文件夹时收到的完整错误消息。

Using CATALINA_BASE: /home/prt/Desktop/apache-tomcat-6.0.29 Using CATALINA_HOME: /home/prt/Desktop/apache-tomcat-6.0.29 Using CATALINA_TMPDIR: /home/prt/Desktop/apache-tomcat-6.0.29/temp Using JRE_HOME: /usr/jdk1.6.0_20 Using CLASSPATH: /home/prt/Desktop/apache-tomcat-6.0.29/bin/bootstrap.jar 8 Jan, 2011 7:08:54 PM org.apache.catalina.core.AprLifecycleListener init INFO: The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: /usr/jdk1.6.0_20/jre/lib/i386/client:/usr/jdk1.6.0_20/jre/lib/i386:/usr/jdk1.6.0_20/jre/../lib/i386:/usr/java/packages/lib/i386:/lib:/usr/lib 8 Jan, 2011 7:08:54 PM org.apache.coyote.http11.Http11Protocol init INFO: Initializing Coyote HTTP/1.1 on http-8080 8 Jan, 2011 7:08:54 PM org.apache.catalina.startup.Catalina load INFO: Initialization processed in 643 ms 8 Jan, 2011 7:08:54 PM org.apache.catalina.core.StandardService start INFO: Starting service Catalina 8 Jan, 2011 7:08:54 PM org.apache.catalina.core.StandardEngine start INFO: Starting Servlet Engine: Apache Tomcat/6.0.29 8 Jan, 2011 7:08:54 PM org.apache.catalina.startup.HostConfig deployDescriptor INFO: Deploying configuration descriptor host-manager.xml 8 Jan, 2011 7:08:55 PM org.apache.catalina.startup.HostConfig deployDescriptor INFO: Deploying configuration descriptor manager.xml 8 Jan, 2011 7:08:55 PM org.apache.catalina.startup.HostConfig deployWAR INFO: Deploying web application archive jsfApplication.war 8 Jan, 2011 7:08:55 PM org.apache.catalina.loader.WebappClassLoader validateJarFile INFO: validateJarFile(/home/prt/Desktop/apache-tomcat-6.0.29/webapps/jsfApplication/WEB-INF/lib/servlet-api.jar) - jar not loaded. See Servlet Spec 2.3, section 9.7.2. Offending class: javax/servlet/Servlet.class 8 Jan, 2011 7:08:55 PM org.apache.catalina.core.StandardContext addApplicationListener INFO: The listener "com.sun.faces.config.ConfigureListener" is already configured for this context. The duplicate definition has been ignored. 8 Jan, 2011 7:08:58 PM org.apache.catalina.core.StandardContext start SEVERE: Error listenerStart 8 Jan, 2011 7:08:58 PM org.apache.catalina.core.StandardContext start SEVERE: Context [/jsfApplication] startup failed due to previous errors 8 Jan, 2011 7:08:58 PM org.apache.catalina.loader.WebappClassLoader clearReferencesJdbc SEVERE: The web application [/jsfApplication] registered the JBDC driver [com.mysql.jdbc.Driver] but failed to unregister it when the web application was stopped. To prevent a memory leak, the JDBC Driver has been forcibly unregistered. 8 Jan, 2011 7:08:58 PM org.apache.catalina.loader.WebappClassLoader clearReferencesThreads SEVERE: The web application [/jsfApplication] appears to have started a thread named [Timer-0] but has failed to stop it. This is very likely to create a memory leak. 8 Jan, 2011 7:08:58 PM org.apache.catalina.loader.WebappClassLoader clearReferencesThreads SEVERE: The web application [/jsfApplication] appears to have started a thread named [MySQL Statement Cancellation Timer] but has failed to stop it. This is very likely to create a memory leak. log4j:ERROR LogMananger.repositorySelector was null likely due to error in class reloading, using NOPLoggerRepository. 8 Jan, 2011 7:08:58 PM org.apache.catalina.startup.HostConfig deployDirectory INFO: Deploying web application directory examples 8 Jan, 2011 7:08:58 PM org.apache.catalina.loader.WebappClassLoader loadClass INFO: Illegal access: this web application instance has been stopped already. Could not load java.net.BindException. The eventual following stack trace is caused by an error thrown for debugging purposes as well as to attempt to terminate the thread which caused the illegal access, and has no functional impact. java.lang.IllegalStateException at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1531) at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1491) at com.mysql.jdbc.CommunicationsException.(CommunicationsException.java:161) at com.mysql.jdbc.MysqlIO.send(MysqlIO.java:2759) at com.mysql.jdbc.MysqlIO.quit(MysqlIO.java:1410) at com.mysql.jdbc.Connection.realClose(Connection.java:4947) at com.mysql.jdbc.Connection.cleanup(Connection.java:2063) at com.mysql.jdbc.Connection.finalize(Connection.java:3403) at java.lang.ref.Finalizer.invokeFinalizeMethod(Native Method) at java.lang.ref.Finalizer.runFinalizer(Finalizer.java:83) at java.lang.ref.Finalizer.access$100(Finalizer.java:14) at java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:160) 8 Jan, 2011 7:08:58 PM org.apache.catalina.startup.HostConfig deployDirectory INFO: Deploying web application directory docs 8 Jan, 2011 7:08:58 PM org.apache.catalina.startup.HostConfig deployDirectory INFO: Deploying web application directory ROOT 8 Jan, 2011 7:08:58 PM org.apache.coyote.http11.Http11Protocol start INFO: Starting Coyote HTTP/1.1 on http-8080 8 Jan, 2011 7:08:58 PM org.apache.jk.common.ChannelSocket init INFO: JK: ajp13 listening on /0.0.0.0:8009 8 Jan, 2011 7:08:58 PM org.apache.jk.server.JkMain start INFO: Jk running ID=0 time=0/24 config=null 8 Jan, 2011 7:08:58 PM org.apache.catalina.startup.Catalina start INFO: Server startup in 3905 ms

1 个答案:

答案 0 :(得分:0)

我也遇到了使用x标签的myfaces-extensions的问题。冲突是由于myfaces是一个非常古老的解决方案,如果你的其他库是uptodate,版本将不匹配。在我的回答中tomahawk inputfileupload uploaded file is null发布时,你应该使用tomahawk t标签和与之相关的库。实际解决方案发布在同一链接的主要答案中。

我很确定这会做的事情。如果帖子在其wiki-link中包含您的问题的答案,请勾选我的答案:)