Class HibernateBundleActivator

  • All Implemented Interfaces:
    org.osgi.framework.BundleActivator

    public class HibernateBundleActivator
    extends Object
    implements org.osgi.framework.BundleActivator
    This BundleActivator provides three different uses of Hibernate in OSGi environments: 1.) Enterprise OSGi JPA: The OSGi container/runtime is in charge of managing all of the client bundles' persistence units. The container/runtime is also in charge of creating and managing the EntityManagerFactory through a registered PersistenceProvider (this). 2.) Un-managed OSGI JPA: Same as #1, but the container does not manage the persistence units. Client bundles identify a typical PersistenceProvider, registered by this activator. 3.) Client bundles create and manage their own SessionFactory. A SessionFactory is registered as an OSGi ServiceFactory -- each requesting bundle gets its own instance of a SessionFactory. The use of services, rather than manual building of the SessionFactory, is necessary to shield users from ClassLoader issues. See OsgiSessionFactoryService for more information.
    • Constructor Detail

      • HibernateBundleActivator

        public HibernateBundleActivator()
    • Method Detail

      • start

        public void start​(org.osgi.framework.BundleContext context)
                   throws Exception
        Specified by:
        start in interface org.osgi.framework.BundleActivator
        Throws:
        Exception
      • stop

        public void stop​(org.osgi.framework.BundleContext context)
                  throws Exception
        Specified by:
        stop in interface org.osgi.framework.BundleActivator
        Throws:
        Exception