[
https://issues.apache.org/jira/browse/LANG-626?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12893180#action_12893180
]
Conny Kreyßel edited comment on LANG-626 at 7/28/10 9:55 AM:
-------------------------------------------------------------
@Mark:
Whats about a OSGi environment? There are many classloaders around and i could
not copy commons-lang.jar to every plugin it use commons-lang.
Why not add all SerializationUtils methods a second method with classloader
attribute and then resolve classes within the ObjectOutputStream with the
submitted classloader and/or ContextClassLoader?
was (Author: azgard):
@Mark:
Whats about a OSGi environment? There are many classloaders around and i could
not copy them to every plugin it use commons-lang.
Why not add all SerializationUtils methods a second method with classloader
attribute and then resolve classes within the ObjectOutputStream with the
submitted classloader and/or ContextClassLoader?
> object cloning with SerializationUtils has classloader problems with no
> workaround
> ----------------------------------------------------------------------------------
>
> Key: LANG-626
> URL: https://issues.apache.org/jira/browse/LANG-626
> Project: Commons Lang
> Issue Type: Bug
> Components: lang.*
> Environment: WebLogic 10.3
> Reporter: Ernest Pasour
> Attachments: ContextClassLoaderAwareCloneMethod.zip
>
>
> In WebLogic 10.3, commons_lang is included on the main classpath, trumping
> the commons_lang on a webapp classpath (in webinf/lib). This causes
> ClassNotFoundException errors when using SerializationUtils.clone() because
> Java serialization uses the classloader of the current class (class invoked
> from) when doing serialization. Java serialization does not respond to the
> thread context classloader.
> Fix: The following web page suggests a fix (including the full source code)
> that honors the context classloader if set. I don't know if this is the
> ideal solution, but at least it allows the problem to be worked around
> without affecting working behavior for existing clients.
> http://www.mail-archive.com/[email protected]/msg44524.html
> Workaround: There is a flag to set on weblogic that inverts the classloader.
> *HOWEVER*, this only works if the webapp does not need certain xml jars.
> Otherwise, WebLogic will fail to start because *it* has classloader issues.
> Therefore, this is not an acceptable workaround.
> Another workaround: The only workaround I know of is to copy the
> SerializationUtils class into a different package in my app so that the
> proper invocation context will be used for serialization. This is very
> undesirable.
> I found these 3 bugs in the database that all seem to be the same problem.
> https://issues.apache.org/jira/browse/OJB-140
> https://issues.apache.org/jira/browse/LANG-241
> https://issues.apache.org/jira/browse/JS2-831
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.