ich versuche gerade eine Art Bearbeitungsfunktion für eine JPA-Klasse (Eclipselink 2.0) zu bauen. Diese soll per pessimistic lock versehentliches bearbeiten von mehreren Personen unterbinden:
Das sleep hab ich eingebaut um den Lock zu überprüfen: ich versuche die Daten per sql zu ändern. Meine Vorstellung ist nun, dass der MySql Server eine Fehlermeldung ausspuckt tut er aber nicht. Das verhalöten ist das selbe wie ohne Lock?!
Was mach ich falsch?
Code:
tx.begin();
em.lock(Eintrag, LockModeType.PESSIMISTIC_WRITE);
assertEquals(LockModeType.PESSIMISTIC_WRITE, em.getLockMode(Eintrag));
Eintrag.setKommentar("rülps");
Eintrag.setImage("rälps");
try {
Thread.sleep(20000);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
tx.commit();
Was mach ich falsch?