On Thu, 18 Oct 2018 at 14:02, Guillaume Smet <guillaume.smet(a)gmail.com> wrote:
Hi,
On Thu, Oct 18, 2018 at 1:33 PM Sanne Grinovero <sanne(a)hibernate.org> wrote:
>
> > Regarding "BasicProxyFactory", Guillaume and I had to fight with this
think a few weeks ago, I think. If I remember correctly, it's used in particular to
instantiate abstract classes (!) during bootstrap. It seems to be needed when copying data
around from an object to another in particular; maybe when the type of an @Embedded
property is abstract? Someone else probably knows more. All I can say is it made some
tests fail some time ago, so you can try making it throw exceptions and run the tests that
fail in debug mode, to see why it's useful exactly.
>
> Thanks for the hint.
>
> I had found some similar clues, and I'm thinking to just limit its
> applicability to models which don't have similar needs: in a second
> phase we could look at creating the necessary bytecode to handle these
> corner cases as well by having the build time enhancement generate the
> additional support classes.
All I can say is that it's useful in some corner cases. If I remember correctly,
Yoann is right about abstract @Embedded properties.
Creating the classes at enhancement time could be a possibility but I'm not sure we
have all the information required to do that when we enhance the entities.
I think it goes without saying but we still need to have ORM working without enhancement,
considering how many bugs we have related to enhanced classes.
I didn't understand thist last sentence. Could you please clarify?
Thanks,
Sanne