Mapping eine map collection mit JPA-Annotationen

Hallo Jungs
Ich bin migrieren einer Anwendung mit hibernate von xml zu JPA-Annotationen.
Derzeit bin ich stecken bei der Zuordnung einer Karte von Objekten, mit Verbindung id mit Anmerkungen
Dies ist, wie die versuche, es zu tun.



class A
{
  ...
  @OneToMany()
  @JoinColumn(name="A_ID")
  /*   B_ID should be the key in this map */
  private Map map = new HashMap();
}

class B
{
  @EmbeddedId
  private CompoundId id;
}

@Embeddable
class CompoundId
{
  @Column(name = "A_ID")
  String aId;

  @Column(name = "B_ID")
  long bId
}

Habe ich auch schon versucht

@OneToMany()
@JoinColumn(name="A_ID", insertable=false, updatable=false)
@MapKeyColumn(name="B_ID")
private Map map = new HashMap();

Caused by: java.sql.SQLException: ORA-00904: "B1_"."ID": invalid identifier             

nicht mit Glück

mapping in XML sieht es so aus

<map name="map" inverse="true" cascade="all-delete-orphan" lazy="false">
<key>
    <column name="A_ID" />
</key>

<map-key type="long" column="B_ID"/>
<one-to-many class="B" />
</map>

hibernate 3.2.7.ga und annotations 3.4.0.GA

thx!!!

InformationsquelleAutor DP. | 2010-12-05
Schreibe einen Kommentar