There is no way to do this in JPA or EclipseLink currently, other than adding
a class to represent the association. You could still model it as a Map,
you would just need to have another variable storing the association class,
and could lazy init the transient Map variable from the other (and back
again the other way, but probably better to just model the association
class).
JPA 2.0 may offer a Map mapping such as this. I'm not sure on the value
being a primitive though, I think the spec's current intension is to allow
the key to be a primitive.
If your an ultra advanced user you could always create your own EclipseLink
mapping subclass for your mapping. Probably subclass ManyToManyMapping, but
it may not be a walk in the park. Please contribute it back if your
successful though.
converted2EL wrote:
Hi,
i could not find a solution for the following problem by searching google,
reading docs and this forum/mailing-list. I want a many-to-many mapping
between two entities with an additional column. I know how to do it by
adding an additional association class, but is there a possibility to
accomplish this task by using a map like
@Entity
public class Class1 {
@Id
protected int id;
protected String name1;
public class Class2 {
@Id
protected int id;
protected String name2;
@???
protected Map<Class1, Integer> class1;
By mixed maps i mean maps having entities as keys and "primitives" as
values.
I hope someone can help me.
Regards,
Winfried
-----
---
http://wiki.eclipse.org/User:James.sutherland.oracle.com James Sutherland
http://www.eclipse.org/eclipselink/
EclipseLink , http://www.oracle.com/technology/products/ias/toplink/
TopLink
Wiki: http://wiki.eclipse.org/EclipseLink EclipseLink ,
http://wiki.oracle.com/page/TopLink TopLink
Forums: http://forums.oracle.com/forums/forum.jspa?forumID=48 TopLink ,
http://www.nabble.com/EclipseLink-f26430.html EclipseLink
Book: http://en.wikibooks.org/wiki/Java_Persistence Java Persistence