2010-01-15 65 views
0

我一直在想辦法在Tomcat 6上創建共享Hibernate會話服務。基本上,我需要有這樣的服務:1.要重新部署(不包括JNDI服務); 2.所有的Web應用程序都可以共享相同的Hibernate會話(緩存)。 Tomcat類加載機制似乎使分享數據庫會話不可能。我可以使用Spring HttpInvoker創建一個可供其他Web應用程序使用的Web應用程序。或者我可以使用Spring dm-Server,但似乎解決方案的複雜性與應用服務器(JBoss或Glassfish)相當。 什麼是可行的解決方案?Tomcat 6上的共享服務?

回答

1

可以使用2nd level cache

除此之外 - 讓我們假設你想你模塊化的應用,這對具有兩個(或更多)的webapps的原因。但是如果你想緩存來自兩個不同webapps的實體,這意味着兩者都存在相同的實體類。這本身並沒有錯,但在不同的上下文這些實體具有相同的緩存似乎是錯誤的。畢竟,你可能不需要兩個網絡應用程序?

如果你確定你需要這個,你可以嘗試實現一個自定義的Tomcat valve,但我可以給你既不建議也沒有關於它的細節。

+0

Tomcat閥是一個有趣的想法。我一定會檢查出來。無論如何,這種做法本身並不高雅。我們正在研究多個GWT Web應用程序來共享一個Hibernate sessionfactory。謝謝。 – renfred 2010-01-15 19:29:43