This week's book giveaway is in the OO, Patterns, UML and Refactoring forum. We're giving away four copies of Refactoring for Software Design Smells: Managing Technical Debt and have Girish Suryanarayana, Ganesh Samarthyam & Tushar Sharma on-line! See this thread for details.
I am working with Spring a couple of weeks now. We are using Spring framework in a standard J2EE application (Hibernate / EJB / Struts).
I have observed that my Hibernate sessionfactory is repeatedly created/instantiated when my EJBs are accessed (for the first time). As I have understood from the spring documentation, every EJB has it's own instance of the Spring application context. My first conclusion is : if I have 7 EJB stateless session beans in my EJB container, I have also 7 initializations of sessionfactory.
That is, 7 times hibernate mapping initialization ...
My question is: "I would want to have only one instance (=one initialization) of sessionfactory which is global for all EJBs AND I do NOT want to use JNDI registration of my Hibernate sessionfactory as MBean(JMX) (Hibernate in Action).?"
Mind you: we are using an older version of BEA Weblogic which has possible no support for JMX / MBeans.
Ideas? Because I am kind of dazzled about the way Spring contexts are implemented with respect to the scope of spring beans.