Ich habe 3 Klasse mit Bezug:appengine - java persistent
- Mitglied 1-n Tracker
- Link-1-n-Tracker
mit einer Eins-zu-viele bidirektionale Beziehung im Besitz
@PersistenceCapable(identityType = IdentityType.APPLICATION)
public class Member {
@PrimaryKey
@Persistent(valueStrategy = IdGeneratorStrategy.IDENTITY)
private Key key;
@Persistent(mappedBy = "member")
private List<Tracker> trackers;
}
@PersistenceCapable(identityType = IdentityType.APPLICATION)
public class Link {
@PrimaryKey
@Persistent(valueStrategy = IdGeneratorStrategy.IDENTITY)
private Key key;
@Persistent(mappedBy = "link")
private List<Tracker> trackers;
}
@PersistenceCapable(identityType = IdentityType.APPLICATION)
public class Tracker {
@PrimaryKey
@Persistent(valueStrategy = IdGeneratorStrategy.IDENTITY)
private Key key;
@Persistent
private Member member;
@Persistent
private Link link;
}
Ich erstelle einen neuen Tracker:
member = new Member();
member.name = "blah";
link = new Link();
link.url = "http://blahblah.blah";
tracker = new Tracker();
tracker.setMember(member);
tracker.setLink(link);
pm.makePersistent(tracker);//error
wirft
The class "The class "zodpob.model.Tracker" is not persistable. This
means that it either hasnt been enhanced, or that the enhanced version
of the file is not in the CLASSPATH (or is hidden by an unenhanced
version), or the Meta-Data/annotations for the class are not found."
is not persistable. This means that it either hasnt been enhanced, or
that the enhanced version of the file is not in the CLASSPATH (or is
hidden by an unenhanced version), or the Meta-Data for the class is
not found.
was "enhanced" ist das?
wenn ich hartnäckig eine Klasse ohne Beziehung, dann ist es gut funktionieren
Ich weiß nicht, Appengine, aber verbesserte Sounds wie eine Art Bytecode Verbesserung. Vielleicht benötigt Appengine einen Vorbereitungsschritt, bevor der Code ausgeführt wird? – rudolfson
Sie verwenden DataNucleus, um es zu verbessern. – Randin