If Util is installed locally, it will only be loaded by the application
ClassLoader, since it isn't preferred.
Peter.
----- Original message -----
> 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
>