Folks,
while woking on the River-436 patch proposal I've came across the
scenario that I am not sure how to handle:
Utility service:
//inteface is NOT preferred
interface Util {...}
//class IS preferred
class UtilProxy implements Util {}
Wrapper service:
//NOT preferred
interface Wrapper {}
//preferred
class WrapperProxy implements Serializable{
//initialized with Util impl from a lookup service
private Util util;
}
Wrapper service codebase includes Util interface but it is _preferred_.
Would deserialization of WrapperProxy end with ClassCastException?
From what I understand UtilProxy is annotated with its codebase. When
deserializing UtilProxy a ClassLoader is going to be created with parent
set to TCCL. It means Util interface is going to be loaded twice by two
ClassLoaders - one for WrapperProxy codebase and another for UtilProxy
codebase.
Am I correct?
And if so: is it desired behavior?
Regards,
--
Michał Kłeczek
XPro Quality Matters
http://www.xpro.biz