JPA: Zweite Instanz eines Entitätsobjekts

Status
Nicht offen für weitere Antworten.

Angel4585

Bekanntes Mitglied
Hallo,

ich habe gerade folgendes Problem:

Ich habe eine Client/Server-JPA-Anwendung. Der Server verwaltet die Datenbank, der Client fordert Daten an.

Jetzt habe ich aber das Problem, dass ich am Client bereits ein Objekt mit der ID 1 habe, mir vom Server jetzt "die aktuelle Version" dieses Objekts vom Server holen möchte, was dazu führt, das ich am Client immernoch das alte habe, da JPA es sceinbar nicht erlaubt das zwei Instanzen eines Entitätsobjekts existieren.
Liege ich mit meiner Vermutung richtig? Wie kann ich das Problem beheben?

Danke schonmal

Martin
 
G

Guest

Gast
Client und Server doch nicht in gleicher VM? Spätestens, wenn die Entities durch die Leitung gehen, sind sie detached.
 

Angel4585

Bekanntes Mitglied
Wann sind die denn in der gleichen VM?
Wenn Sie auf dem selben PC ausgeführt werden, oder wenn ich sie beide zB aus NetBeans raus starte?

Ich habe beides getestet, also auch getrennt nacheinander auf einem PC gestartet, hilft jedoch nichts.

Ich werde es jetzt anders versuchen, indem ich ein Interface für die jeweiligen Objekte anlege und am Client nur dieses Interface auslese. Das sollte funktionieren. *Methode Holzhammer anwend*
 
G

Guest

Gast
Angel4585 hat gesagt.:
Wann sind die denn in der gleichen VM?
Wenn Sie auf dem selben PC ausgeführt werden, oder wenn ich sie beide zB aus NetBeans raus starte?
Nein, damit meinte ich z.B. ein Web-Interface auf gleichem Application Server oder ähnliches Szenario.

Angel4585 hat gesagt.:
Ich habe beides getestet, also auch getrennt nacheinander auf einem PC gestartet, hilft jedoch nichts.

Ich werde es jetzt anders versuchen, indem ich ein Interface für die jeweiligen Objekte anlege und am Client nur dieses Interface auslese. Das sollte funktionieren. *Methode Holzhammer anwend*
I.d.R. synchronisiert man (clientseitig) nach dem Speichern, indem man einen entsprechenden Event in die Runde schickt.
Das Model (der Teil, der hier für das Speichern zuständig ist) würde einen Event schicken, der alle interessierten
(Listener/Observer) Contoller darüber informiert, dass sich die Daten geändert haben. Diese leiten den Event an
Views weiter, die sich dann aktualisieren.

Du kannst auch dafür sorgen, dass nie zwei Instanzen mit gleicher Id gleichzeitig existieren (Stichwort: Serializable#readResolve).
Das kann aber schnell ein Eigenleben entwickeln.
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
R Wie zweite DB hinzufügen? Datenbankprogrammierung 6
M Wie übergebe ich Datenbankobjekte aus einer sql-Datenbank einer Java Klasse bzw. Instanz Datenbankprogrammierung 7
serjoscha MySQL Eine Instanz von eigenem DBWrapper -> Fehler durch mehrfachbenutzung möglich? Datenbankprogrammierung 2
S Wie überprüfe ich ob die Instanz einer Connection gerade werwendet wird? Datenbankprogrammierung 4
turmaline [Hibernate] @OneToOne: Löschen einer referenzierten Instanz Datenbankprogrammierung 2
J SqlConnection Instanz wird immer grösser? Datenbankprogrammierung 2
E Auswahl einer DB instanz Datenbankprogrammierung 4
Robert Zenz Aufteilen von Up/Downvotes eines Benutzers in drei Gruppen. Datenbankprogrammierung 0
H Oracle Resize eines Images in Java und Rückgabe des Image als BLOB an die Oracle Datebank Datenbankprogrammierung 14
damike84 Hibernate: persistieren eines Graphen Datenbankprogrammierung 2
G Laufzeit eines Algorithmus mittels Big Theta bestimmen Datenbankprogrammierung 5
G ID zuweisung eines TerminKalenders (mehrere Kalender) Datenbankprogrammierung 8
D Hibernate: Zustand eines Objekts erkennen? Datenbankprogrammierung 0
S HSQLDB Verbieten eines update auf eine bestimmte reihe Datenbankprogrammierung 4
J Datenbankeintag eines Warenkorbes funktioniert nicht Datenbankprogrammierung 4
H MySQL Werte eines Datensatzes in einen anderen kopieren Datenbankprogrammierung 2
M [Hibernate]Abgleich eines lokalen Objekts mit dem Zustand aus der Datenbank. Datenbankprogrammierung 3
N Problem bei Erstellung eines Index Datenbankprogrammierung 12
G PostgreSQL Postgre: Passwort eines Benutzers ändern Datenbankprogrammierung 3
D Anzeige wärend des Ausführens eines Statements Datenbankprogrammierung 13
N executeUpdate "innerhalb" eines Resultsets Datenbankprogrammierung 14
S Select eines bestimmten Datensatzes Datenbankprogrammierung 4
J Kopieren eines Datensatzes Datenbankprogrammierung 4
R Effiziente Java-Methode zum finden eines freien PK Datenbankprogrammierung 7
M Zugriff auf eine Access-Datenbank innerhalb eines jar-Files Datenbankprogrammierung 7
brainray Bei MySQL alle Datenbanken eines Servers abfragen Datenbankprogrammierung 3
1 User die Rechte eines Datenbankerstellers zuweisen? Datenbankprogrammierung 3
X SQL Abfrage für Ähnlichkeit eines Strings Datenbankprogrammierung 2
B SQL Abfrage. Nur den ersten eines Blocks Datenbankprogrammierung 2
M Passwort eines Technischen Users hinterlegen Datenbankprogrammierung 6
M Konvertierung eines Ojects to String Datenbankprogrammierung 3
T Datenbanknamen eines Datenbankservers auslesen Datenbankprogrammierung 9
J Größe eines ResultSets Datenbankprogrammierung 12
G Problem beim Schreiben eines Dateipfads in MySQL-DB Datenbankprogrammierung 9
G Löschen eines Eintrages verbunden mit JList Datenbankprogrammierung 5
F Filtern innerhalb eines Resultset Datenbankprogrammierung 12
W Anzahl der Spalten eines ResultSets bestimmen Datenbankprogrammierung 5
F die DN eines LDAP verzeichnisses abfragen Datenbankprogrammierung 2
B Laden eines JDBC Treiber. Datenbankprogrammierung 7
N Struktur eines Datenbankinterface? Datenbankprogrammierung 7
P Wirkliche Zeilenanzahl eines ResultSets ermitteln Datenbankprogrammierung 22
K frage zum ausführen eines INSERT statements Datenbankprogrammierung 16
K errechnen eines mittelwertes vom jdbc rSet Datenbankprogrammierung 4
M Abfrage trennt Ergbnis eines Atrributes nach den Leerzeichen Datenbankprogrammierung 4
F Abfrage eines DB Feldes aus einer mySQL Datenbank Datenbankprogrammierung 2
K Datenbank eines Forums nutzen Datenbankprogrammierung 11
J Alle Spalten und Zeilen eines ResultSets ausgeben ? Datenbankprogrammierung 2
B Zeilenzahl eines ResultSet ermitteln Datenbankprogrammierung 5

Ähnliche Java Themen

Neue Themen


Oben