-->
These old forums are deprecated now and set to read-only. We are waiting for you on our new forums!
More modern, Discourse-based and with GitHub/Google/Twitter authentication built-in.

All times are UTC - 5 hours [ DST ]



Forum locked This topic is locked, you cannot edit posts or make further replies.  [ 2 posts ] 
Author Message
 Post subject: Probleme bei Migration JDO nach JPA
PostPosted: Mon Mar 09, 2009 10:53 am 
Newbie

Joined: Mon Mar 09, 2009 9:36 am
Posts: 2
Hallo,

ich arbeite zur Zeit an einer Migration einer 3- Schichten- Architektur von JDO nach JPA.

Code:
==================================
              GUI
==================================
    Geschäftsprozessteuerung
==================================
      Persistenz- Factory
   ----------------------------
       Persistenzschicht
==================================



Da JDO und JPA eine sehr ähnliche API haben, sollte man meinen, dass eine Migration
relativ einfach von statten gehen sollte.
Eine Anforderung für das Projekt ist, dass nur die Persistenzschicht angepasst werden
soll, und weder GUI noch Geschäftsprozessteuerung verändert werden.
Die Persistenz- Factory (Abstract Factory Pattern) bietet ein Interface, um
die Persistenzschicht austauschbar zu machen, welche im wesentlichen aus
DAOs (Data Access Objects) besteht.

Das Problem besteht darin, dass das Model der Swing- GUI an das Model
der Entity- Klassen geknüpft ist.
Der Benutzer erzeugt also u.a. beim ausfüllen eines Formulars gleichzeitig
ein Entity- Objekt.
Wurde die Eingabemaske vom Benutzer durch klicken auf "Abbrechen"
rückgängig gemacht, wurde in der Persistenzschicht ein refresh(obj)
aufgerufen.

Problematisch ist, dass Hibernate hoffenbar refresh nur
auf vollständig persistenten Objektgraphen ausführen kann.

Bei dem Beispiel Kunde->Buchung, wobei Kunde im Zustand
managed und Buchung im Zustand new ist, wirft Hibernate die
folgende Exception, wenn man refresh(kunde) ausführt (wobei
die Beziehung zu Buchung eine Annotation CascadeType.Refresh besitzt):
"ERROR org.hibernate.AssertionFailure - an assertion failure occured
(this may indicate a bug in Hibernate, but is more likely due to unsafe use of the session)
org.hibernate.AssertionFailure: null identifier".

Hat jemand eine Idee, wie ich das Problem geschickt umgehen kann?
Ich wäre für jeden Hinweis dankbar.


Vielen Dank schonmal im Voraus.
Code:
Code:


Top
 Profile  
 
 Post subject:
PostPosted: Wed Mar 11, 2009 3:43 am 
Newbie

Joined: Mon Mar 09, 2009 9:36 am
Posts: 2
Nachdem ich einfach mal EclipseLink als JPA- Implementierung genommen habe, lief es. Da bin ich auf die Idee gekommen, dass es tatsächlich ein Bug in Hibernate sein könnte.
http://opensource.atlassian.com/project ... t-tabpanel

Ist es auch! Und seit zwei Jahren wurde er nicht behoben. Es scheint einfach viel zu wenig Leute zu geben, die Hibernate in einer Rich-Client- Anwendung einsetzen.


Top
 Profile  
 
Display posts from previous:  Sort by  
Forum locked This topic is locked, you cannot edit posts or make further replies.  [ 2 posts ] 

All times are UTC - 5 hours [ DST ]


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum

Search for:
© Copyright 2014, Red Hat Inc. All rights reserved. JBoss and Hibernate are registered trademarks and servicemarks of Red Hat, Inc.