-->
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.  [ 4 posts ] 
Author Message
 Post subject: Eine SessionFactory in mehreren Applikationen verwenden
PostPosted: Mon Apr 03, 2006 9:12 am 
Newbie

Joined: Mon Apr 03, 2006 8:37 am
Posts: 2
Hallo,

ich habe das Forum nach meinem Problem durchsucht, wusste allerdings nicht so recht, wie "das Kind nennen soll". Daher meine Frage: ist es möglich, dass sich mehrere Applikationen eine SessionFactory teilen?

Konkret habe ich folgendes Problem:

Die Business-Logik auf meinem Applikations-Server (Tomcat 5.0) und eine Standalone-Anwendung sollen via Hibernate (3.1.2) auf eine HSQL-Datenbank zugreifen (alles auf demselben PC). Dabei soll die Session-Factory nur einmalig geladen werden und der Zugriff auf die Datenbank von beiden Seiten aus möglich sein.
Ist dies überhaupt möglich? Wenn dem so ist: wie kann man dies realisieren?

Der Zugriff auf die Datenbank funktioniert vom Tomcat sowie von der Standalone-Applikation für sich einwandfrei.

Oder gibt es andere Wege, von mehreren Anwendungen mit Hibernate auf die Datenbank zuzugreifen?

Ich weiss leider nicht, wie ich das Problem nennen soll und kann es daher nur umschreiben.

Um jeden Rat bin ich dankbar!

Vielen Dank für die Hilfe.

Gruß,

humphrey


Top
 Profile  
 
 Post subject:
PostPosted: Tue Apr 04, 2006 4:57 am 
Expert
Expert

Joined: Tue Dec 07, 2004 6:57 am
Posts: 285
Location: Nürnberg, Germany
Du hast meiner Meinung nach zwei Möglichkeiten:

- Hibernate Session Factory in den JNDI Tree hängen. Hab ich noch nie gemacht und weiss auch nicht, ob Dir das was im Tomcat bringt

- Eine DAO Facade erstellen, die im Tomcat läuft. Von der Standalone App könntest Du dann remote auf die DAO Facade zugreifen. Hier ist das Ziel, dass Du einen Persistenz Layer hast, den Du in mehreren Anwendungen verwendest. Ich halte das für ne sehr saubere Lösung.

_________________
Please don't forget to rate


Top
 Profile  
 
 Post subject:
PostPosted: Wed Apr 05, 2006 4:30 am 
Newbie

Joined: Mon Apr 03, 2006 8:37 am
Posts: 2
Vielen Dank für die beiden Tips!

Zum Thema:
- Tomcat verfügt nur über einen read-only JNDI-Kontext, d.h. man kann seine SessionFactory nicht an den JNDI-tree binden. Die SessionFactory muss somit im Applikationscode gehalten werden, was das "Teilen der SessionFactory" unmöglich macht.

- zur DAO-Facade. Habe ich es richtig verstanden? Ich kapsle die Hibernate-Zugriffe mit DAO innerhalb von Tomcat und greife dann Remote von der Standalone-Applikation - beispielsweise mit RMI - auf die DAOs zu.
Wenn dem so ist: benötige ich dann noch DAO? (Hatte leider noch nie mit DAOs zu tun...)

Gruß,
humphrey


Top
 Profile  
 
 Post subject:
PostPosted: Tue Apr 11, 2006 6:17 am 
Expert
Expert

Joined: Tue Dec 07, 2004 6:57 am
Posts: 285
Location: Nürnberg, Germany
Ich sehe das DAO eher als "Persistenz" Schicht, auf die Du remote zugreifst. Quasi als Facade, die den Hibernate Zugriff kapselt. Ob Du hinter der Facade jetzt JDBC, JDO, Hibernate oder iBATIS machst sollte für den Nutzer der Facade transparent sein.

Der Remote Zugriff muss nicht über RMI erfolgen, du könntest auch via Hessian/Burlap bzw. xml rpc zugreifen. Normalerweise würde man über den Persistenz Layer noch Business Logik am Tomcat packen, so dass man nur noch Thin Clients hat. Wenn das bei Dir nicht möglich ist, würde ich einfach remote auf den Persistenz Layer gehn.

_________________
Please don't forget to rate


Top
 Profile  
 
Display posts from previous:  Sort by  
Forum locked This topic is locked, you cannot edit posts or make further replies.  [ 4 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.