Ich habe eine kleine Anwendung läuft auf GlassFish. Ein Teil davon beinhaltet das Schreiben einiger Details über ein Pferd in eine Derby-Datenbank. Ich verwende eine automatisch generierte Sitzungsfassade und eine Entitätsklasse, um in die Datenbank zu schreiben. Dies funktioniert korrekt, und ich kann sehen, dass die Daten korrekt mit NetBeans SQL Editor geschrieben werden. Wenn ich dann List allHorses = aHorseFacade.findAll();
verwende, um eine Liste mit allen Einträgen in der Tabelle zu füllen, wird der neueste Eintrag zweimal dupliziert und der vorherige letzte Eintrag ist weg. Wenn ich dann die Anwendung erneut bereitstellen, funktioniert sie wie erwartet und findAll()
füllt die Liste wie es sollte. Jeder Rat sehr geschätzt.Java EE findAll() gibt doppelte endgültige Eintrag zu Liste nach dem Schreiben in die Datenbank
-2
A
Antwort
1
Das Ändern des Werts des freigegebenen Cache-Modus in persistence.xml
von Unspecified
zu None
behebt das Problem, das ich hatte.
Verwandte Themen
- 1. Laravel doppelte Eintrag nach Kraft löscht
- 2. Beim Schreiben von Liste zu Datei, die endgültige Ausgabe fehlt einige Mitglieder der Liste
- 3. doppelte Eintrag auf Datenbank mit PHP
- 4. iPhone zu Java EE Remoting
- 5. Falsche Weiterleitung nach dem Anmelden (Java EE mit JSF)
- 6. Wie wichtig sind die Enterprise Java Beans in Java EE?
- 7. Doppelte E-Mail-Adressen verhindern Eintrag in Datenbank
- 8. Einfache Paginierung in Java EE mit Jsp
- 9. Java EE Beispielprojekt
- 10. Gibt es ein Java EE JDK
- 11. Fehler: java.util.zip.ZipException: doppelte Eintrag
- 12. doppelte Eintrag für Schlüssel ‚idx_client_id_parent_id_alias_language‘ beim manuellen Einfügen joomla Datenbank
- 13. Java KeyStore doppelte Aliase
- 14. Benutzereinstellungen in Java EE-Anwendung
- 15. Threading in Java EE Webapps
- 16. Komponententests in Java EE-Umgebung
- 17. Einführung in Java EE
- 18. Mysql: Schreiben in die Protokolldatei nach dem Einfügen in Tabelle
- 19. Statische/Endgültige Java-Klassen?
- 20. java URLConnection erhalten die endgültige URL umgeleitet
- 21. Ausnahme beim Schreiben in die Datenbank (org.hibernate.exception.ConstraintViolationException)
- 22. Ein Algorithmus, bei dem die endgültige Ausgabe nach dem Zufallsprinzip zwischen y und x gewählt wird.
- 23. Generische Liste FindAll() vs. foreach
- 24. doppelte Eintrag für die wichtigste Primär in mysql
- 25. Java EE SqlResultSetMapping Syntax
- 26. Doppelte Systemaufruf zu schreiben() verursacht massive Netzwerkabschwächung
- 27. Prolog findall Liste der Prädikate
- 28. Java EE Jar-Dateifreigabe
- 29. verhindern in SQLLite Datenbank zu kopieren Eintrag android
- 30. Java EE 6 und Alternativen
Überprüfen Sie Ihre derby.log (aktivieren Sie 'derby.language.logStatementText' wenn nötig), um zu sehen, welche ** tatsächlichen ** SQL-Anweisungen Ihr Programm an Ihre Datenbank ausgibt, und sehen Sie, ob Sie das angezeigte Verhalten verstehen etwas präziser. –
Vielen Dank für den Rat. Sobald es mir schließlich gelungen ist, 'derby.language.logStatementText' zu aktivieren und die Logs zu untersuchen, scheint die Anwendung die korrekten SQL-Anweisungen zu geben. Ich bin ratlos. Die Datenbank wird korrekt geschrieben, aber nachdem 'SELECT IDNUMBER, NAME, USERNAME FROM APP.HORSES' ausgeführt wurde, gibt es nicht zurück, was ich über NetBeans in der PFERDE-Tabelle sehen kann. Danke trotzdem, ich schätze deine Hilfe :) – PaulCWhisp
Heh, ich habe es herausgefunden :) Nach ein wenig mehr lesen, erkannte ich, dass in 'persistence.xml' der Shared Cache Mode auf 'Unspecified' gesetzt wurde. Durch die Einstellung "None" wurde das Problem behoben. Ich brauchte sechs Stunden, um das herauszufinden ... Ich würde weinen, wenn ich nicht so verdammt zufrieden wäre. Nochmals vielen Dank für Ihre Hilfe, Mr. Pendleton. Du kommst herum, ich habe deinen Namen heute an vielen Stellen im Internet gefunden :) – PaulCWhisp