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.  [ 1 post ] 
Author Message
 Post subject: Problem initialising Hibernate on an app server
PostPosted: Wed Apr 13, 2005 11:24 am 
Beginner
Beginner

Joined: Tue Feb 01, 2005 8:38 am
Posts: 38
Hibernate version:
Hibernate 3.0rc1

Hi,

I am experiencing a problem when trying to initialise Hibernate from a class that is deployed on an application server (Sun One app server 7). My EAR contains a jar which contains my session bean, home & remote interfaces, rmi stubs and deployment descriptors. The EAR also contains the following third party jars...
    hibernate3.jar
    dom4j-1.4.jar
    jta.jar
    log4j-1.2.8.jar
    cglib-full-2.0.2.jar
    odmg-3.0.jar ehcache-1.1.jar
    commons-collections-2.1.1.jar
    commons-dbcp-1.2.1.jar
    commons-lang-2.1.jar
    commons-logging-1.0.4.jar
    commons-pool-1.2.jar
    classes12.zip
    j2ee.jar
    proxool-0.8.3.jar
    asm-2.0.RC1.jar
    asm-util-2.0.RC1.jar
    asm-attrs-2.0.RC1.jar
    c3p0-0.9.0-pre4.jar
(To be honest, I don't think I need a lot of them but the EAR verifier tool that comes with Sun One said that Hibernate referenced classes from j2ee.jar, proxool-0.8.3.jar, asm-2.0.RC1.jar, asm-util-2.0.RC1.jar, asm-attrs-2.0.RC1.jar, c3p0-0.9.0-pre4.jar and it wouldn't deploy until I added them to the EAR & classpath)

All of the third-party jars are referenced in the manifest.mf classpath of the jar containing my session bean.

So, my EAR deploys successfully and in my client code I can get back a reference to the bean from the InitialContext lookup. A method in my seesion bean creates a utility class (DataManager) who's constructor in turn calls...
Code:
SessionFactory sessionFactory = new Configuration().configure().buildSessionFactory();


When this is invoked, the following error is thrown and Hibernate fails to initialise.

Full stack trace of any exception that occurs:
Code:
java.rmi.ServerException: RemoteException occurred in server thread; nested exception is:
   java.rmi.RemoteException: Unknown exception; nested exception is:
   java.lang.NoClassDefFoundError: org/apache/log4j/Layout
   at com.sun.corba.se.internal.iiop.ShutdownUtilDelegate.mapSystemException(Unknown Source)
   at javax.rmi.CORBA.Util.mapSystemException(Unknown Source)
   at com.myapp.servicesLayer._SBApplicationMetaData_Stub.getMessage(Unknown Source)
   at com.myapp.ServiceLocatorTest.main(ServiceLocatorTest.java:32)
Caused by: java.rmi.RemoteException: Unknown exception; nested exception is:
   java.lang.NoClassDefFoundError: org/apache/log4j/Layout
   at com.myapp.servicesLayer.SBApplicationMetaDataBean_EJBObjectImpl.getMessage(SBApplicationMetaDataBean_EJBObjectImpl.java:38)
   at com.myapp.servicesLayer._SBApplicationMetaDataBean_EJBObjectImpl_Tie._invoke(Unknown Source)
   at com.sun.corba.ee.internal.POA.GenericPOAServerSC.dispatchToServant(GenericPOAServerSC.java:569)
   at com.sun.corba.ee.internal.POA.GenericPOAServerSC.internalDispatch(GenericPOAServerSC.java:211)
   at com.sun.corba.ee.internal.POA.GenericPOAServerSC.dispatch(GenericPOAServerSC.java:113)
   at com.sun.corba.ee.internal.iiop.ORB.process(ORB.java:275)
   at com.sun.corba.ee.internal.iiop.RequestProcessor.process(RequestProcessor.java:83)
   at com.iplanet.ias.corba.ee.internal.iiop.ServicableWrapper.service(ServicableWrapper.java:25)
   at com.iplanet.ias.util.threadpool.FastThreadPool$ThreadPoolThread.run(FastThreadPool.java:288)
   at java.lang.Thread.run(Thread.java:534)
Caused by: java.lang.NoClassDefFoundError: org/apache/log4j/Layout
   at org.apache.commons.logging.impl.Log4jFactory.getInstance(Log4jFactory.java:140)
   at org.apache.commons.logging.impl.LogFactoryImpl.getInstance(LogFactoryImpl.java:253)
   at org.apache.commons.logging.LogFactory.getLog(LogFactory.java:375)
   at org.hibernate.cfg.Configuration.<clinit>(Configuration.java:110)
   at com.myapp.dataLayer.DataManager.<init>(DataManager.java:104)
   at com.myapp.dataLayer.DataManager.getInstance(DataManager.java:58)
   at com.myapp.servicesLayer.SBApplicationMetaDataBean.<init>(SBApplicationMetaDataBean.java:57)
   at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
   at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
   at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
   at java.lang.reflect.Constructor.newInstance(Constructor.java:274)
   at java.lang.Class.newInstance0(Class.java:308)
   at java.lang.Class.newInstance(Class.java:261)
   at com.sun.ejb.containers.StatelessSessionContainer.createStatelessEJB(StatelessSessionContainer.java:482)
   at com.sun.ejb.containers.StatelessSessionContainer.access$000(StatelessSessionContainer.java:68)
   at com.sun.ejb.containers.StatelessSessionContainer$SessionContextFactory.create(StatelessSessionContainer.java:735)
   at com.sun.ejb.containers.util.pool.NonBlockingPool.getObject(NonBlockingPool.java:176)
   at com.sun.ejb.containers.StatelessSessionContainer.getContext(StatelessSessionContainer.java:458)
   at com.sun.ejb.containers.BaseContainer.preInvoke(BaseContainer.java:495)
   at com.myapp.servicesLayer.SBApplicationMetaDataBean_EJBObjectImpl.getMessage(SBApplicationMetaDataBean_EJBObjectImpl.java:24)
   ... 9 more



A NoClassDefFoundError for org/apache/log4j/Layout is thrown but this class is in the ear (log4j-1.2.8.jar) and referenced in the manifest classpath. The same problem happens if I deploy on weblogic 8.1. I have succesfully used Hibernate from a regular java application (i.e. not on an app server) and didn't have to have half the jars listed above on the classpath to do so.

ANY help on this issue would be greatly appreciated as it's proving to be a bit of a showstopper.

Regards,

John :)[/list]


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

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.