I'm looking at ANN-422

In HA, the target is usually inferred from the API (generics), and can be overridden in all associations through targetEntity ( @ManyToOne(targetEntity...) ) currently, you cannot override the target for a component, nor you can override it for a <map-key-many-to-many/>

Two solutions

1.
Define a @Target annotation that will work like the targetEntity for association and also handle components (@Embedded) Define a @MapKeyTarget to override the <map-key-many-to-many/> or <map-key/> (composite-element) target

2.
Define a @Target annotation that will work like the targetEntity for association and also handle components (@Embedded)
add a targetElement to @MapKey and @MapKeyManyToMany annotations

I don't like much 2 because it mixes physical concerns and logical ones, but it reduce the amount of needed annotations

Note that I hope the future spec will hopefully handle all cases nicely (ie add a targetElement in @Embedded), @MapKey should go to back the drawing board from a spec POV so we can think of something clean from the begining.

Any preference, or alternative solution?

_______________________________________________
hibernate-dev mailing list
hibernate-dev@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/hibernate-dev

Reply via email to