[
https://issues.apache.org/jira/browse/FILEUPLOAD-125?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Jochen Wiedmann resolved FILEUPLOAD-125.
----------------------------------------
Resolution: Won't Fix
Understanding your suggestion, I nevertheless decided against picking it up as
a recommendation:
While the idea to compare classloaders works in your case, I wouldn't assume
that it will work always. For example, I see no reason, why
Thread.currentThread().getContextClassLoader() must differ among threads: For
example, I could imagine that a J2EE server uses the very same ClassLoader for
all threads, which holds a ThreadLocal instance internally. A recommendation
should work in all cases.
IMO, the ball is still in the field of commons-io, which should allow to create
and destroy the thread as a local object, which can be bound, for example, to
the ServletContextListener.
> new FileCleanerCleanup may lead to problems [PATCH]
> ---------------------------------------------------
>
> Key: FILEUPLOAD-125
> URL: https://issues.apache.org/jira/browse/FILEUPLOAD-125
> Project: Commons FileUpload
> Issue Type: Bug
> Affects Versions: 1.2
> Reporter: Cédrik LIME
>
> This is a follow-up on FILEUPLOAD-120.
> As described in using.html#resourceCleanup, stopping the IO's reaper thread
> when commons-io is in the container's classpath will impact other running
> applications. The solution to this is to test if the FileCleaner class was
> loaded by the application's ClassLoader (i.e. commons-io.jar is in
> WEB-INF/lib/):
> public void contextDestroyed(ServletContextEvent sce) {
> if (FileCleaner.class.getClassLoader() ==
> Thread.currentThread().getContextClassLoader()) {
> FileCleaner.exitWhenFinished();
> }
> }
> This is, if users don't forget to put FileCleanerCleanup as a servlet
> listener, of course...
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]