Hibernate Domain Objekte per GUI zähmen

Wer mit dem O/R Mapper Hibernate arbeitet, kennt das schlechte Gewissen, das im Nacken sitzt, wenn man „mal eben“ in der Datenbank direkte Änderungen durchführt. Abhilfe schafft ein relativ neues Tool namens GenericRCP, welches das direkte Editieren der Hibernate Objekte ermöglicht: einfach jar File mit den Domainklassen und Hibernate Mappings plus Datenbank Konfiguration und das Verändern der Objekteigenschaften kann beginnen. Hilfreich insbesondere das Hinzufügen von Relationen, gut beraten ist man hier mit einer sinnvollen toString() Methode, um die gewünschten Instanzen schneller zu finden.

Probleme scheint es nur noch mit dem Erkennen der cache Tags innerhalb der Mappings zu geben, die man am besten vor dem Import in GenericRCP aus den Mappings entfernt. Ganz nebenbei scheint GenericRCP eine interessante Technologiestudie in Sachen Spring-Richclient darzustellen, und kann dementsprechend leicht erweitert und mit angepassten Attributeeditoren ausgestattet werden.

3 comments

  1. Danke für den netten Beitrag zum genericRCP!

    Die Cache Problematik ist mit der neuen Version 0.3.1 behoben worden (Eigentlich ist es ein Bug im EHCache Modul, dieses läst keine 2 Cache Instanzen auf dem selben Verzeichnis laufen). Nun wird einfach bei jedem neuem JAR Import das Temp Vierzeichnis für den Cache umgesetzt.

    Noch ein Wort zu den toString Methoden:

    Wenn man den genericRCP als wirkliche App für Endanwender einsetzen will und die toString Methode nicht verändern will (oder kann, weil man z.B. OSCache einsetzt), so kann man sehr einfach eigene TableCellRenderer einhängen, welche dann statt der toString Methode zum Rendern eines Attributwerts in der Tabelle verwendet werden. Mehr dazu in der am Freitag veröffentlichten Doku (https://genericrcp.dev.java.net/docs/).

    Wie auch immer: Noch einmal vielen Dank für den netten Beitrag, wir freuen uns immer über positive Anregungen und Issuereporting.

    Peter (CoDeveloper des GenericRCPs)

  2. Hi,

    das mit dem Caching haben wir in der neuen Version 0.3.1
    genericRCP-0.3.1
    gefixt.

    Hibernate 3.2.0.ga machte Probleme beim initialisieren des Caches wenn mehrere Domain Models in den genericRCP geladen werden und auf den gleichen „diskStorePath“ zeigen.

    Falls bei dir andere Fehler beim Caching auftreten gib mir bitte bescheid.

  3. Cool, dass ihr euch über diesen Weg gemeldet habt! Vielen Dank auch für die Hinweise, zu der Cache-Problematik und dem TableCellRenderer. Sobald etwas Luft ist, schnappe ich mir das neueste GenericRCP.

    Viele Grüße,
    Niko

Leave a comment