Anzeige:
Ergebnis 1 bis 2 von 2

Thema: JPA Exception-genaue Fehlerursache

  1. #1
    Registrierter Benutzer
    Registriert seit
    08.04.2005
    Beiträge
    10

    JPA Exception-genaue Fehlerursache

    Hallo,

    ich habe eine Swing Anwendung, die per BeansBinding die Daten über JPA in einer Datenbank ablegt. Ich verwende Oracle Toplink, was mit Netbeans 6 mitgeliefert wird.
    In der Datenbank gibt es Fremdschlüsselbeziehungen zwischen einzelnen Tabellen. Wenn ich nun in der GUI versuche einen Datensatz zu löschen, der noch referenziert ist, schmeißt die em.getTransaction().commit() Methode eine RollbackException, die aussagt, dass der Foreign Key Contraint verletzt wurde.
    Bis hierhin ist ja alles richtig. Der betreffende Satz darf ja nicht gelöscht werden. Ich möchte/sollte/muß dem User aber mitteilen, warum das Löschen nicht geht. Wie bekomme ich also die Ursache heraus? Den Messagestring zu parsen kann ja nicht die Lösung sein! Zumal die auch anders bei z.B. Hibernate aussehen dürfte. Andere mögliche Ursachen wie z.B. ein schon vorhandener Key in einer uniq Spalte kanns ja auch geben.
    IMHO sollte es doch bei JPA eine generische Möglichkeit geben, die Ursache zu ermittlen.

    stargaizer

  2. #2
    Registrierter Benutzer
    Registriert seit
    07.05.2007
    Beiträge
    656
    Moin,

    normalerweise sollte bei Oracle ein entsprechender "ORA-NNNN"-Code mitkommen, den Du auswerten kannst. Einen allgemein gültigen Fehlercode wirst Du AFAIK nicht kriegen, ich kenne keine normierte Syntax für solche Fehler (jedes DBMS hat eigene Vorstellungen von der Fehlerursache und längst nicht alle Daten-"Banken" kennen überhaupt sowas wie Foreign Key Constraints - guck mal bei älteren MySQL-"Datenbanken"). Außerhalb von Relationalen Datenbanken sind solche Ursachen ja völlig unbekannt.

    Jan

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •