You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@geronimo.apache.org by "Martin Hejl (JIRA)" <ji...@apache.org> on 2011/03/16 09:47:29 UTC

[jira] Updated: (GERONIMO-5868) ClassNotFoundException when using commons-fileupload

     [ https://issues.apache.org/jira/browse/GERONIMO-5868?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Martin Hejl updated GERONIMO-5868:
----------------------------------

    Attachment: geronimo_postfile.zip

Sample eclipse project that demonstrates the issue

> ClassNotFoundException when using commons-fileupload
> ----------------------------------------------------
>
>                 Key: GERONIMO-5868
>                 URL: https://issues.apache.org/jira/browse/GERONIMO-5868
>             Project: Geronimo
>          Issue Type: Bug
>      Security Level: public(Regular issues) 
>          Components: general
>    Affects Versions: 2.2.1
>            Reporter: Martin Hejl
>         Attachments: geronimo_postfile.zip
>
>
> Using a vanilla geronimo 2.2.1 server from 
> http://www.apache.org/dyn/closer.cgi/geronimo/2.2.1/geronimo-tomcat6-javaee5-2.2.1-bin.zip 
> and GEP 2.2.1 I created a simple dynamic web project (one jsp and one servlet, with commons-fileupload and commons-io in WEB-INF/lib/ - see attachment)
> When the form in hello.jsp (http://localhost:8080/HelloWorld/) is postet to the servlet (http://localhost:8080/HelloWorld/postFile), I get the following exception:
> java.lang.ClassNotFoundException: org.apache.commons.io.output.DeferredFileOutputStream in classloader org.apache.geronimo.configs/axis2/2.2.1/car
> 	at org.apache.geronimo.kernel.config.MultiParentClassLoader.loadOptimizedClass(MultiParentClassLoader.java:407)
> 	at org.apache.geronimo.kernel.config.MultiParentClassLoader.loadClass(MultiParentClassLoader.java:257)
> 	at java.lang.ClassLoader.loadClass(ClassLoader.java:248)
> 	at org.apache.commons.fileupload.disk.DiskFileItemFactory.createItem(DiskFileItemFactory.java:179)
> 	at org.apache.commons.fileupload.FileUploadBase.createItem(FileUploadBase.java:500)
> 	at org.apache.commons.fileupload.FileUploadBase.parseRequest(FileUploadBase.java:367)
> 	at org.apache.commons.fileupload.servlet.ServletFileUpload.parseRequest(ServletFileUpload.java:116)
> 	at de.guhsoft.test.PostServlet.doPost(PostServlet.java:38)
> 	at javax.servlet.http.HttpServlet.service(HttpServlet.java:713)
> 	at javax.servlet.http.HttpServlet.service(HttpServlet.java:806)
> 	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
> 	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
> 	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
> 	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
> 	at org.apache.geronimo.tomcat.GeronimoStandardContext$SystemMethodValve.invoke(GeronimoStandardContext.java:420)
> 	at org.apache.geronimo.tomcat.valve.GeronimoBeforeAfterValve.invoke(GeronimoBeforeAfterValve.java:47)
> 	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
> 	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
> 	at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:555)
> 	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
> 	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)
> 	at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:857)
> 	at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588)
> 	at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:396)
> 	at org.apache.geronimo.pool.ThreadPool$1.run(ThreadPool.java:214)
> 	at org.apache.geronimo.pool.ThreadPool$ContextClassLoaderRunnable.run(ThreadPool.java:344)
> 	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
> 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
> 	at java.lang.Thread.run(Thread.java:662)
> As suggestet by Kevan at http://article.gmane.org/gmane.comp.java.geronimo.user/15126 adding
> <dep:hidden-classes>
> 	<dep:filter>org.apache.commons.io</dep:filter>
> 	<dep:filter>org.apache.commons.fileupload</dep:filter>
> </dep:hidden-classes>
> to the deployment plan fixes the issue. 
> Kevan suggested at http://article.gmane.org/gmane.comp.java.geronimo.user/15127 that I should open a Jira anyway, fileupload probably
> shouldn't be in the axis2 classloader

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira