Completed
Details
Details
Assignee
Unassigned
UnassignedReporter
Tsutomu Yano
Tsutomu YanoLabels
Approval
Ok
Patch
Code
Priority
Affects versions
Fix versions
Created February 4, 2013 at 7:06 AM
Updated July 31, 2015 at 9:39 PM
Resolved July 31, 2015 at 9:39 PM
When a genclass'ed object is serialized and sent to a remote system, the remote system throws an exception loading the object:
Reproduce:
Cause:
A gen-classed class (in this case, SampleInterfaceImpl.class) uses a static-initializer for loading SampleInterfaceImpl__init.class like:
RT.load in default uses a context-classloader for loading __init.class but all classes depending on a gen-classed class must be loaded from the same classloader. In this case, RT.load must use a remote URLClassLoader which loads the main class.
Proposed:
Instead produce the equivalent of this in the static initializer:
With this code, RT.load will uses a same classloader which load SampleInterfaceImpl.class.
Patch: clj-1157-v2.diff
Screened by: