This problem probably means that you are trying to load a field in your EntityBean with the wrong type.
Examples are class MyBean { public long someField; } some_file in your database is null, so field craps out. The error message should be better. Regards, Bill > -----Original Message----- > From: [EMAIL PROTECTED] > [mailto:[EMAIL PROTECTED]]On Behalf Of > Mahesh Agarwal > Sent: Friday, October 19, 2001 2:34 PM > To: [EMAIL PROTECTED] > Subject: [JBoss-dev] RE: Jboss-development digest, Vol 1 #1833 - 4 msgs > > > can any pls let me know what is the problem here > here is the exception > > > [RequestBean] TRANSACTION ROLLBACK EXCEPTION:Load failed; nested exception > is: > java.lang.NullPointerException; nested exception is: > java.rmi.ServerException: Load failed; nested exception is: > java.lang.NullPointerException > [RequestBean] java.rmi.ServerException: Load failed; nested exception is: > [RequestBean] java.lang.NullPointerException > [RequestBean] java.lang.NullPointerException > [RequestBean] at java.lang.reflect.Field.set(Native Method) > [RequestBean] at > org.jboss.ejb.plugins.jaws.jdbc.JDBCCommand.setCMPFieldValue( > JDBCCommand.java:655) > [RequestBean] at > org.jboss.ejb.plugins.jaws.jdbc.JDBCLoadEntityCommand.loadOne > Entity(JDBCLoadEntityCommand.java:217) > [RequestBean] at > org.jboss.ejb.plugins.jaws.jdbc.JDBCLoadEntityCommand.handleR > esult(JDBCLoadEntityCommand.java:176) > [RequestBean] at > org.jboss.ejb.plugins.jaws.jdbc.JDBCQueryCommand.executeState > mentAndHandleResult(JDBCQueryCommand.java:59) > [RequestBean] at > org.jboss.ejb.plugins.jaws.jdbc.JDBCCommand.jdbcExecute(JDBCC > ommand.java:160) > [RequestBean] at > org.jboss.ejb.plugins.jaws.jdbc.JDBCLoadEntityCommand.execute > (JDBCLoadEntityCommand.java:147) > [RequestBean] at > org.jboss.ejb.plugins.jaws.JAWSPersistenceManager.loadEntity( > JAWSPersistenceManager.java:156) > [RequestBean] at > org.jboss.ejb.plugins.CMPPersistenceManager.loadEntity(CMPPer > sistenceManager.java:362) > [RequestBean] at > org.jboss.ejb.plugins.EntitySynchronizationInterceptor.invoke > (EntitySynchronizationInterceptor.java:286) > [RequestBean] at > org.jboss.ejb.plugins.EntityInstanceInterceptor.invoke(Entity > InstanceInterceptor.java:208) > [RequestBean] at > org.jboss.ejb.plugins.EntityLockInterceptor.invoke(EntityLock > Interceptor.java:136) > [RequestBean] at > org.jboss.ejb.plugins.TxInterceptorCMT.invokeNext(TxIntercept > orCMT.java:133) > [RequestBean] at > org.jboss.ejb.plugins.TxInterceptorCMT.runWithTransactions(Tx > InterceptorCMT.java:307) > [RequestBean] at > org.jboss.ejb.plugins.TxInterceptorCMT.invoke(TxInterceptorCM > T.java:99) > [RequestBean] at > org.jboss.ejb.plugins.SecurityInterceptor.invoke(SecurityInte > rceptor.java:128) > [RequestBean] at > org.jboss.ejb.plugins.LogInterceptor.invoke(LogInterceptor.ja > va:195) > [RequestBean] at > org.jboss.ejb.EntityContainer.invoke(EntityContainer.java:427 > ) > [RequestBean] at > org.jboss.ejb.plugins.jrmp.server.JRMPContainerInvoker.invoke > (JRMPContainerInvoker.java:483) > [RequestBean] at > org.jboss.ejb.plugins.jrmp.interfaces.GenericProxy.invokeCont > ainer(GenericProxy.java:335) > [RequestBean] at > org.jboss.ejb.plugins.jrmp.interfaces.EntityProxy.invoke(Enti > tyProxy.java:133) > [RequestBean] at $Proxy38.getName(Unknown Source) > [RequestBean] at > com.zeborg.labor.ejb.session.requestmanager.RequestManagerEB. > getRequestListData(RequestManagerEB.java:64) > [RequestBean] at java.lang.reflect.Method.invoke(Native Method) > [RequestBean] at > org.jboss.ejb.StatelessSessionContainer$ContainerInterceptor. > invoke(StatelessSessionContainer.java:543) > [RequestBean] at > org.jboss.ejb.plugins.StatelessSessionInstanceInterceptor.inv > oke(StatelessSessionInstanceInterceptor.java:87) > [RequestBean] at > org.jboss.ejb.plugins.TxInterceptorCMT.invokeNext(TxIntercept > orCMT.java:133) > [RequestBean] at > org.jboss.ejb.plugins.TxInterceptorCMT.runWithTransactions(Tx > InterceptorCMT.java:247) > [RequestBean] at > org.jboss.ejb.plugins.TxInterceptorCMT.invoke(TxInterceptorCM > T.java:99) > [RequestBean] at > org.jboss.ejb.plugins.SecurityInterceptor.invoke(SecurityInte > rceptor.java:128) > [RequestBean] at > org.jboss.ejb.plugins.LogInterceptor.invoke(LogInterceptor.ja > va:195) > [RequestBean] at > org.jboss.ejb.StatelessSessionContainer.invoke(StatelessSessi > onContainer.java:286) > [RequestBean] at > org.jboss.ejb.plugins.jrmp.server.JRMPContainerInvoker.invoke > (JRMPContainerInvoker.java:393) > [RequestBean] at java.lang.reflect.Method.invoke(Native Method) > [RequestBean] at > sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.jav > a:241) > [RequestBean] at sun.rmi.transport.Transport$1.run(Transport.java:142) > [RequestBean] at java.security.AccessController.doPrivileged(Native > Method) > [RequestBean] at > sun.rmi.transport.Transport.serviceCall(Transport.java:139) > [RequestBean] at > sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTranspor > t.java:443) > [RequestBean] at > sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPT > ransport.java:643) > [RequestBean] at java.lang.Thread.run(Thread.java:484) > [RequestManagerEB] javax.transaction.TransactionRolledbackException: Load > failed > ; nested exception is: > java.lang.NullPointerException; nested exception is: > java.rmi.ServerException: Load failed; nested exception is: > java.lang.NullPointerException > [Default] the collection 1 is [ZLabor/ContractTagBean:1] > > -----Original Message----- > From: [EMAIL PROTECTED] > [mailto:[EMAIL PROTECTED]] > Sent: Friday, October 19, 2001 9:33 PM > To: [EMAIL PROTECTED] > Subject: Jboss-development digest, Vol 1 #1833 - 4 msgs > > > Send Jboss-development mailing list submissions to > [EMAIL PROTECTED] > > To subscribe or unsubscribe via the World Wide Web, visit > https://lists.sourceforge.net/lists/listinfo/jboss-development > or, via email, send a message with subject or body 'help' to > [EMAIL PROTECTED] > > You can reach the person managing the list at > [EMAIL PROTECTED] > > When replying, please edit your Subject line so it is more specific > than "Re: Contents of Jboss-development digest..." > > > Today's Topics: > > 1. AW: [JBoss-dev] JBoss and SOAP (Jung , Dr. Christoph) > 2. Re: Re: Shutdown behaves while using 8082 service (Peter Fagerlund) > 3. CVS update: jboss/src/main/org/jboss/system Shutdown.java (Peter > Fagerlund) > 4. Re: Bug in cache (Peter Levart) > > --__--__-- > > Message: 1 > From: "Jung , Dr. Christoph" <[EMAIL PROTECTED]> > To: "Jboss-Development (E-Mail)" <[EMAIL PROTECTED]> > Subject: AW: [JBoss-dev] JBoss and SOAP > Date: Fri, 19 Oct 2001 15:58:20 +0200 > > ZOAP is a deprecated project.=20 > > JBoss.net is the successor that will envisage to ease the = > implementation of > J2ee-based web services=20 > and the integration of external web-services into your J2ee logic. = > Jboss.net > builds on the Apache Axis framework.=20 > In contrast to using Apache-Soap and Axis directly in tomcat or jetty, > JBoss.net gives you a tighter integration into the JBoss hot-deploy > environment. > > It is currently pre-alpha with some preliminary documentation and a = > small > testsuite (ordinary web-services, stateless EJB web service w/o = > security, > JMX-based web service). JBoss.net is strongly tied to the RH release = > plan. =20 > > CGJ > > -----Urspr=FCngliche Nachricht----- > Von: jp Morgan [mailto:[EMAIL PROTECTED]] > Gesendet: Freitag, 19. Oktober 2001 15:14 > An: [EMAIL PROTECTED] > Betreff: [JBoss-dev] JBoss and SOAP > > > How does one turns jboss ejb into web services? Is > there is soap programming layer for jboss? ZOAP or > jboss.net any advice on these or other tools to use > with jboss for implementing web services > > __________________________________________________ > Do You Yahoo!? > Make a great connection at Yahoo! Personals. > http://personals.yahoo.com > > _______________________________________________ > Jboss-development mailing list > [EMAIL PROTECTED] > https://lists.sourceforge.net/lists/listinfo/jboss-development > > > --__--__-- > > Message: 2 > Date: Fri, 19 Oct 2001 17:26:25 +0200 > Subject: Re: [JBoss-dev] Re: Shutdown behaves while using 8082 service > From: Peter Fagerlund <[EMAIL PROTECTED]> > To: JBoss Dev <[EMAIL PROTECTED]> > > The shutdown hook started in the org.jboss.system.Shutdown(MBean) works > correct while invoking it throught ctrl-c ... invoking throught > :8082 either > with a browser or jboss_init_redhat.sh using org.jboss.shutdown is failing > since the call is unreferencing the caller -chain while > stopping(/destroying/unloading) ... > > So I do not stop/destroy/unload the MBeans needed for 8082 in a debug > shutdown class I am about to commit for Your comments/solutions ... > > Right now i have a handle to all services from > ServiceController.getDeployed() in > org.jboss.system.Shutdown.shutdownServices() and are doing some > logic there > ... my findings *drive* towards separating the shutdown in > *phases* and then > perhaps delegate from from shutdownServices() to : > > Core (GPA) > Core Services (MBeans) > Deployments (AutoDeployer) > > I am not shure if the shutdown hook should be installed as a MBean ? ... > maybe as a POJO in the main class ? ... eitherway We need to Map the > (un)dependecy logic ? ... somehow ... > > The first undeployed should be the last -> first deployment (AutoDeployer) > Then undeploy depending on dependencies (MBeans) > The last undeployed should be the log > Then System.exit(0) will take care of GPA > > There seem to be a fragmentation in how We behave in our MBeans with > stop/destroy/unload and naming semantics... > MQ seems to do some clean up in destroy and referencing Mbeans > that then has > already stopped/destroyed ... and so on ... I need to look at > this some more > ... together with You all ! ... > > our jboss-3.0.0alpha default 43 MBeans and the naming ! ... > as returned from ServiceController.getDeployed() > ******************************************************************** > JCA:name=JmsXA,service=ConnectionFactoryLoader > :name=StdJMSPool,service=ServerSessionPoolMBean > :name=JBossMQProvider,service=JMSProviderLoader > JBossMQ:name=DLQ,service=Queue > JBossMQ:name=ex,service=Queue > JBossMQ:name=F,service=Queue > JBossMQ:name=E,service=Queue > JBossMQ:name=D,service=Queue > JBossMQ:name=C,service=Queue > JBossMQ:name=B,service=Queue > JBossMQ:name=A,service=Queue > JBossMQ:name=controlQueue,service=Queue > JBossMQ:name=testQueue,service=Queue > JBossMQ:name=bob,service=Topic > JBossMQ:name=example,service=Topic > JBossMQ:name=testTopic,service=Topic > JBossMQ:service=InvocationLayer,type=UIL > JBossMQ:service=InvocationLayer,type=OIL > JBossMQ:service=InvocationLayer,type=RMI > JBossMQ:service=InvocationLayer,type=JVM > JBossMQ:service=PersistenceManager > JBossMQ:service=StateManager > JBossMQ:service=Server > JBOSS-SYSTEM:name=DefaultDS,service=ConnectionFactoryLoader > JBOSS-SYSTEM:service=Hypersonic > JCA:service=RARDeployer > J2EE:service=J2eeDeployer > JBOSS-SYSTEM:service=ContainerFactory > JBOSS-SYSTEM:service=Mail > JBOSS-SYSTEM:service=Jetty > JCA:name=MinervaXACMFactory,service=ConnectionManagerFactoryLoader > JCA:name=MinervaSharedLocalCMFactory,service=ConnectionManagerFact > oryLoader > JCA:name=MinervaNoTransCMFactory,service=ConnectionManagerFactoryLoader > JMX:name=Connector,type=RMI > Adaptor:name=html > JBOSS-SYSTEM:service=AutoDeployer > JBOSS-SYSTEM:service=ClientUserTransaction > JBOSS-SYSTEM:service=TransactionManager > Security:name=JaasSecurityManager > Security:name=SecurityConfig > JBOSS-SYSTEM:service=JNDIView > JBOSS-SYSTEM:service=Naming > JBOSS-SYSTEM:service=Webserver > ******************************************************************** > > If You now anything about the above MBeans can You check the relevant > undeploy messages and dependencys ... when running the new ***debug*** > org.jboss.system.Shutdown() > > I am looking at ServiceController service name above > :name=StdJMSPool,service=ServerSessionPoolMBean > and the MBean Server service name (below) has it as > JBOSS-SYSTEM:name=StdJMSPool,service=ServerSessionPoolMBean > > ++ > > ??? > > our jboss-3.0.0alpha default 95 MBeans and the naming ! ... > as returned from MBeanServer.queryNames(null, null) > ******************************************************************** > ZClassLoaders:id=1834657505 > ZClassLoaders:id=1024097707 > JBOSS-SYSTEM:service=AutoDeployer > ZClassLoaders:id=-217826988 > ZClassLoaders:id=-1763317780 > ZClassLoaders:id=757739105 > JBOSS-SYSTEM:service=TransactionManager > Security:name=JaasSecurityManager > ZClassLoaders:id=-364644404 > ZClassLoaders:id=-28077840 > ZClassLoaders:id=1444653299 > JBossMQ:name=DLQ,service=Queue > JBossMQ:name=bob,service=Topic > ZClassLoaders:id=-884717210 > JBossMQ:name=controlQueue,service=Queue > J2EE:service=J2eeDeployer > ZClassLoaders:id=272735180 > ZClassLoaders:id=-1535629649 > ZClassLoaders:id=1150410981 > ZClassLoaders:id=-1848367062 > ZClassLoaders:id=-397132413 > ZClassLoaders:id=1117837941 > JBOSS-SYSTEM:spine=ServiceController > JCA:name=MinervaNoTransCMFactory,service=ConnectionManagerFactoryLoader > JBOSS-SYSTEM:service=Jetty > JBossMQ:service=PersistenceManager > JBOSS-SYSTEM:service=JNDIView > JBossMQ:service=InvocationLayer,type=UIL > JBossMQ:name=B,service=Queue > ZClassLoaders:id=749384218 > JBOSS-SYSTEM:service=ContainerFactory > JBossMQ:service=StateManager > JCA:name=JmsXA,service=ConnectionFactoryLoader > JBOSS-SYSTEM:service=Webserver > ZClassLoaders:id=767188900 > JBossMQ:name=D,service=Queue > JBOSS-SYSTEM:spine=ServiceLibraries > Jetty:Jetty=0 > ZClassLoaders:id=-1676017461 > ZClassLoaders:id=757744871 > JBossMQ:name=testQueue,service=Queue > ZClassLoaders:id=-1435351005 > JBossMQ:name=example,service=Topic > ZClassLoaders:id=-1918247651 > ZClassLoaders:id=-1173593481 > JBOSS-SYSTEM:service=Info > JBOSS-SYSTEM:name=DefaultDS,service=ConnectionFactoryLoader > JMImplementation:type=MBeanServerDelegate > JBossMQ:name=F,service=Queue > JBOSS-SYSTEM:service=Hypersonic > JBOSS-SYSTEM:type=Shutdown > JBOSS-SYSTEM:service=Mail > JBossMQ:service=InvocationLayer,type=OIL > JBossMQ:service=Server > ZClassLoaders:id=-255765971 > Adaptor:name=html > JBossMQ:service=InvocationLayer,type=JVM > JMX:name=Connector,type=RMI > JCA:name=MinervaXACMFactory,service=ConnectionManagerFactoryLoader > ZClassLoaders:id=-1733376771 > JBOSS-SYSTEM:service=ClientUserTransaction > ZClassLoaders:id=-858822424 > ZClassLoaders:id=1251785838 > ZClassLoaders:id=-647286175 > JBOSS-SYSTEM:spine=ServiceClassLoader > ZClassLoaders:id=757742109 > ZClassLoaders:id=-1802790593 > ZClassLoaders:id=-1704732450 > ZClassLoaders:id=355443262 > ZClassLoaders:id=-839633995 > JCA:service=RARDeployer > JBOSS-SYSTEM:service=ServiceDeployer > ZClassLoaders:id=894298020 > ZClassLoaders:id=757734704 > JBossMQ:service=InvocationLayer,type=RMI > ZClassLoaders:id=332652630 > ZClassLoaders:id=643879817 > JBossMQ:name=ex,service=Queue > JBOSS-SYSTEM:service=Naming > ZClassLoaders:id=618377029 > ZClassLoaders:id=1008929138 > JBossMQ:name=A,service=Queue > > JCA:name=MinervaSharedLocalCMFactory,service=ConnectionManagerFact > oryLoader > ZClassLoaders:id=-164344006 > JBossMQ:name=E,service=Queue > ZClassLoaders:id=-1824674805 > ZClassLoaders:id=-1084842115 > JBossMQ:name=testTopic,service=Topic > Security:name=SecurityConfig > JBOSS-SYSTEM:name=JBossMQProvider,service=JMSProviderLoader > JBOSS-SYSTEM:name=StdJMSPool,service=ServerSessionPoolMBean > JBossMQ:name=C,service=Queue > ZClassLoaders:id=1442845140 > JBOSS-SYSTEM:service=Logging,type=Log4J > ZClassLoaders:id=1335445824 > ******************************************************************** > > names should return the same ? ... > (un)dependencys ? ... > where should the logic go ? ... > > Its is clean now --lets make it squeeeeeeeekyyyyyy so .... > > /peter_f > > > > --__--__-- > > Message: 3 > To: [EMAIL PROTECTED] > From: Peter Fagerlund <[EMAIL PROTECTED]> > Date: Fri, 19 Oct 2001 08:36:15 -0700 > Subject: [JBoss-dev] CVS update: jboss/src/main/org/jboss/system > Shutdown.java > > User: peter_f > Date: 01/10/19 08:36:15 > > Modified: src/main/org/jboss/system Shutdown.java > Log: > Added debug messages trying to understand the (un)dependencys > > Revision Changes Path > 1.4 +119 -27 jboss/src/main/org/jboss/system/Shutdown.java > > Index: Shutdown.java > =================================================================== > RCS file: /cvsroot/jboss/jboss/src/main/org/jboss/system/Shutdown.java,v > retrieving revision 1.3 > retrieving revision 1.4 > diff -u -r1.3 -r1.4 > --- Shutdown.java 2001/10/16 00:45:28 1.3 > +++ Shutdown.java 2001/10/19 15:36:15 1.4 > @@ -7,9 +7,11 @@ > package org.jboss.system; > > import java.util.List; > -import java.util.ArrayList; > +import java.util.Arrays; > import java.util.Iterator; > import java.util.Set; > +import java.util.List; > +import java.util.ListIterator; > > import javax.management.ObjectName; > import javax.management.MBeanServer; > @@ -25,7 +27,7 @@ > * > * @author <a href="mailto:[EMAIL PROTECTED]">Rickard Öberg</a> > * @author <a href="mailto:[EMAIL PROTECTED]">Jason Dillon</a> > - * @version $Revision: 1.3 $ > + * @version $Revision: 1.4 $ > */ > public class Shutdown > implements MBeanRegistration, ShutdownMBean > @@ -39,7 +41,7 @@ > > /** The MBean server we are attached to. */ > private MBeanServer server; > - > + > // Public ------------------------------------------------------- > > /** > @@ -126,35 +128,125 @@ > { > try > { > - // Stop services > - server.invoke(new > ObjectName("JBOSS-SYSTEM:spine=ServiceController"), > - "stop", new Object[0] , new String[0]); > - > - // Destroy services > - server.invoke(new > ObjectName("JBOSS-SYSTEM:spine=ServiceController"), > - "destroy", new Object[0] , new String[0]); > - > - // unload all MBeans except one called > JMImplementation:type=MBeanServerDelegate > - ObjectName delegateName = null; > - Set allMBeans = server.queryNames(null,null); > - for(Iterator i = allMBeans.iterator();i.hasNext();) { > - ObjectName name = (ObjectName) i.next(); > - > if(name.getCanonicalName().equals("JMImplementation:type=MBeanServ > erDelegate > ") == false ) { > - log.info("Unloading MBean : " + > name.getCanonicalName()); > - server.unregisterMBean(name); > - } else { > - delegateName = name; > + // get the deployed objects from ServiceController > + ObjectName[] deployed = (ObjectName[]) server.invoke( > + new > ObjectName("JBOSS-SYSTEM:spine=ServiceController"), > + "getDeployed", new Object[0] , new String[0] ); > + > + List servicesCopy = Arrays.asList(deployed); > + ListIterator enum = servicesCopy.listIterator(); > + ListIterator beanEnum = servicesCopy.listIterator(); > + ObjectName name = null; > + String[] sig = { "javax.management.ObjectName" }; > + > + // filo ( first in last out ) > +/* > + while (enum.hasNext()) > + { > + enum.next(); > + > + // filter out some services here ? > + > + } > + > +*/ > + // Stop / Destroy / Unload all MBeans from ServiceController > + > + // Stop > + while (enum.hasNext()) > + //while (enum.hasPrevious()) > + { > + name = (ObjectName)enum.next(); > + //name = (ObjectName)enum.previous(); > + Object[] args = { name }; > + log.info("**********************Looking at MBean : " > + name.getCanonicalName()); > + // Stop services > + if(! > name.getCanonicalName().equals("JMX:name=Connector,type=RMI") > + && ! name.getCanonicalName().equals("Adaptor:name=html") > + && ! > name.getCanonicalName().equals("JBOSS-SYSTEM:service=Naming") > + ) > + { > + log.info("**********************Stopping MBean : " + > name.getCanonicalName()); > + server.invoke(new > ObjectName("JBOSS-SYSTEM:spine=ServiceController"), "stop", args , sig); > + > + // Destroy services > + > + // Unload services > + > } > + } > + > + // Destroy > + while (enum.hasPrevious()) > + //while (enum.hasNext()) > + { > + name = (ObjectName)enum.previous(); > + //name = (ObjectName)enum.next(); > + Object[] args = { name }; > + log.info("**********************Looking at MBean : " + > name.getCanonicalName()); > + // Destroy services > + if(! > name.getCanonicalName().equals("JMX:name=Connector,type=RMI") > + && ! name.getCanonicalName().equals("Adaptor:name=html") > + && ! > name.getCanonicalName().equals("JBOSS-SYSTEM:service=Naming") > + ) > + { > + log.info("**********************Destroying > MBean : " + > name.getCanonicalName()); > + server.invoke(new > ObjectName("JBOSS-SYSTEM:spine=ServiceController"), "destroy", > args , sig); > + } > + > + } > + > + > + // Unload > + > + /* There are inconsistence in names returned from > ServiceController > + * [Shutdown,INFO] Undeploying MBean : > :name=JBossMQProvider,service=JMSProviderLoader > + * that prevents Us from using Service Controller for unload > right now !!! ... > + */ > + /* > + // Unload MBeans from ServiceController > + while (enum.hasNext()) > + { > + name = (ObjectName)enum.next(); > + if( ! > name.getCanonicalName().equals("JMImplementation:type=MBeanServerDelegate > + { > + Object[] args = { name }; > + log.info("Undeploying MBean : " + > name.getCanonicalName()); > + // Unload services > + server.invoke(new > ObjectName("JBOSS-SYSTEM:spine=ServiceController"), > + "undeploy", args , sig); > + } > + } > + */ > + > + // Unload all MBeans from MBean Server > + Set allMBeans = server.queryNames(null,null); > + Iterator i = allMBeans.iterator(); > + // write the Mbeans Out > + /* > + while(i.hasNext()) { > + name = (ObjectName) i.next(); > + log.info("**********************Looking at > MBean : " + > name.getCanonicalName()); > } > - // this will throw an RuntimeOperationsException > - //log.info("Unloading MBean : " + > delegateName.getCanonicalName()); > - //server.unregisterMBean(delegateName); > + */ > + ///* > + while(i.hasNext()) { > + name = (ObjectName) i.next(); > + log.info("**********************Looking at > MBean : " + > name.getCanonicalName()); > + if(! > name.getCanonicalName().equals("JMImplementation:type=MBeanServerD > elegate") > + && ! > name.getCanonicalName().equals("JMX:name=Connector,type=RMI") > + && ! name.getCanonicalName().equals("Adaptor:name=html") > + && ! > name.getCanonicalName().equals("JBOSS-SYSTEM:service=Naming") > + ) > + { > + log.info("**********************Unloading > MBean : " + name.getCanonicalName()); > + server.unregisterMBean(name); > + } > + } > + //*/ > } > catch (RuntimeMBeanException rmbe) { > rmbe.getTargetException().printStackTrace(); > - } > - catch (RuntimeOperationsException roe) { > - roe.getTargetException().printStackTrace(); > } > catch (Exception e) { > log.error("failed to destroy services", e); > > > > > > --__--__-- > > Message: 4 > From: Peter Levart <[EMAIL PROTECTED]> > To: Peter Levart <[EMAIL PROTECTED]>, > "Bill Burke" <[EMAIL PROTECTED]>, "Ole Husgaard" <[EMAIL PROTECTED]>, > <[EMAIL PROTECTED]> > Subject: Re: [JBoss-dev] Bug in cache > Date: Fri, 19 Oct 2001 18:01:46 +0200 > > When investigating this further I found out the following: > > This is a normal call stack (as printed from the > AbstractInstanceCache.insert > method) when creating new instance of entity bean (CustomerBean) > with empty > ejbPostCreate() method. As you can see the insertion into cache happens > after > the ejbPostCreate method returns... > > [16:16:32,939,Default] TRACE: CustomerBean.ejbCreate... id=peter > [16:16:33,035,Default] TRACE: CustomerBean.ejbPostCreate... id=peter > [16:16:33,085,Default] java.lang.Exception: JUST DUMPING STACK, > key = peter > [16:16:33,086,Default] at > org.jboss.ejb.plugins.AbstractInstanceCache.insert(AbstractInstanc > eCache.jav > a:242) > [16:16:33,087,Default] at > org.jboss.ejb.plugins.EntityInstanceInterceptor.invokeHome(EntityI > nstanceInt > erceptor.java:164) > [16:16:33,088,Default] at > org.jboss.ejb.plugins.EntityLockInterceptor.invokeHome(EntityLockI > nterceptor > .java:104) > [16:16:33,089,Default] at > org.jboss.ejb.plugins.AbstractTxInterceptor.invokeNext(AbstractTxI > nterceptor > .java:100) > [16:16:33,090,Default] at > org.jboss.ejb.plugins.TxInterceptorCMT.runWithTransactions(TxInter > ceptorCMT. > java:156) > [16:16:33,091,Default] at > org.jboss.ejb.plugins.TxInterceptorCMT.invokeHome(TxInterceptorCMT > .java:56) > [16:16:33,091,Default] at > org.jboss.ejb.plugins.SecurityInterceptor.invokeHome(SecurityInter > ceptor.jav > a:106) > [16:16:33,092,Default] at > org.jboss.ejb.plugins.LogInterceptor.invokeHome(LogInterceptor.java:109) > [16:16:33,093,Default] at > org.jboss.ejb.EntityContainer.invokeHome(EntityContainer.java:441) > [16:16:33,094,Default] at > org.jboss.ejb.plugins.jrmp.server.JRMPContainerInvoker.invokeHome( > JRMPContai > nerInvoker.java:421) > [16:16:33,099,Default] at > org.jboss.ejb.plugins.jrmp.interfaces.HomeProxy.invokeHome(HomePro > xy.java:23 > 7) > [16:16:33,100,Default] at > org.jboss.ejb.plugins.jrmp.interfaces.HomeProxy.invoke(HomeProxy.java:182) > [16:16:33,101,Default] at $Proxy9.create(Unknown Source) > [16:16:33,102,Default] at > _0002fcreateCustomer_0002ejspcreateCustomer_jsp_0._jspService(_000 2fcreateCu > stomer_0002ejspcreateCustomer_jsp_0.java:90) > > > ...and these are two call stacks of the same situation when > creating a new > instance of entity bean (AddressBean) which in it's > ejbPostCreate() method > calls related entity's (CustomerBean) bussiness method that in > turn adds the > > just created instance (of AddressBean) to the -to-many side of the > one-to-many relation. As you can see the 1st insert happens as a > result of > the calling of the bussines method in the ejbPostCreate()... > > > [16:21:34,218,Default] TRACE: AddressBean.ejbCreate... cid=peter, > id=peter_home > [16:21:34,263,Default] TRACE: AddressBean.ejbPostCreate... begin > cid=peter, > id=peter_home > [16:21:34,305,Default] java.lang.Exception: JUST DUMPING STACK, key = > peter_home > [16:21:34,306,Default] at > org.jboss.ejb.plugins.AbstractInstanceCache.insert(AbstractInstanc > eCache.jav > a:242) > [16:21:34,307,Default] at > org.jboss.ejb.plugins.AbstractInstanceCache.get(AbstractInstanceCa > che.java:2 > 08) > [16:21:34,308,Default] at > org.jboss.ejb.plugins.EntityInstanceCache.get(EntityInstanceCache.java:60) > [16:21:34,309,Default] at > org.jboss.ejb.plugins.EntityInstanceInterceptor.invoke(EntityInsta > nceInterce > ptor.java:185) > [16:21:34,310,Default] at > org.jboss.ejb.plugins.EntityLockInterceptor.invoke(EntityLockInter > ceptor.jav > a:132) > [16:21:34,311,Default] at > org.jboss.ejb.plugins.AbstractTxInterceptor.invokeNext(AbstractTxI > nterceptor > .java:98) > [16:21:34,312,Default] at > org.jboss.ejb.plugins.TxInterceptorCMT.runWithTransactions(TxInter > ceptorCMT. > java:156) > [16:21:34,313,Default] at > org.jboss.ejb.plugins.TxInterceptorCMT.invoke(TxInterceptorCMT.java:65) > [16:21:34,313,Default] at > org.jboss.ejb.plugins.SecurityInterceptor.invoke(SecurityIntercept > or.java:13 > 1) > [16:21:34,314,Default] at > org.jboss.ejb.plugins.LogInterceptor.invoke(LogInterceptor.java:166) > [16:21:34,315,Default] at > org.jboss.ejb.EntityContainer.invoke(EntityContainer.java:447) > [16:21:34,316,Default] at > org.jboss.ejb.plugins.cmp.jdbc.bridge.JDBCCMRFieldBridge.invokeGet > RelatedId( > JDBCCMRFieldBridge.java:471) > [16:21:34,317,Default] at > org.jboss.ejb.plugins.cmp.jdbc.bridge.JDBCCMRFieldBridge.createRel > ationLinks > (JDBCCMRFieldBridge.java:430) > [16:21:34,318,Default] at > org.jboss.ejb.plugins.cmp.jdbc.bridge.RelationSet.add(RelationSet.java:82) > [16:21:34,318,Default] at > customer.CustomerBean.addAddress(CustomerBean.java:109) > [16:21:34,319,Default] at java.lang.reflect.Method.invoke(Native Method) > [16:21:34,321,Default] at > org.jboss.ejb.EntityContainer$ContainerInterceptor.invoke(EntityCo > ntainer.ja > va:1002) > [16:21:34,322,Default] at > org.jboss.ejb.plugins.cmp.jdbc.JDBCReadAheadInterceptor.invoke(JDB > CReadAhead > Interceptor.java:100) > [16:21:34,323,Default] at > org.jboss.ejb.plugins.cmp.jdbc.JDBCRelationInterceptor.invoke(JDBC > RelationIn > terceptor.java:134) > [16:21:34,324,Default] at > org.jboss.ejb.plugins.EntitySynchronizationInterceptor.invoke(Enti > tySynchron > izationInterceptor.java:308) > [16:21:34,325,Default] at > org.jboss.ejb.plugins.EntityInstanceInterceptor.invoke(EntityInsta > nceInterce > ptor.java:201) > [16:21:34,325,Default] at > org.jboss.ejb.plugins.EntityLockInterceptor.invoke(EntityLockInter > ceptor.jav > a:132) > [16:21:34,326,Default] at > org.jboss.ejb.plugins.AbstractTxInterceptor.invokeNext(AbstractTxI > nterceptor > .java:98) > [16:21:34,327,Default] at > org.jboss.ejb.plugins.TxInterceptorCMT.runWithTransactions(TxInter > ceptorCMT. > java:156) > [16:21:34,328,Default] at > org.jboss.ejb.plugins.TxInterceptorCMT.invoke(TxInterceptorCMT.java:65) > [16:21:34,329,Default] at > org.jboss.ejb.plugins.SecurityInterceptor.invoke(SecurityIntercept > or.java:13 > 1) > [16:21:34,330,Default] at > org.jboss.ejb.plugins.LogInterceptor.invoke(LogInterceptor.java:166) > [16:21:34,331,Default] at > org.jboss.ejb.EntityContainer.invoke(EntityContainer.java:447) > [16:21:34,331,Default] at > org.jboss.ejb.plugins.local.BaseLocalContainerInvoker.invoke(BaseL > ocalContai > nerInvoker.java:320) > [16:21:34,332,Default] at > org.jboss.ejb.plugins.local.BaseLocalContainerInvoker$EntityProxy. > invoke(Bas > eLocalContainerInvoker.java:449) > [16:21:34,333,Default] at $Proxy11.addAddress(Unknown Source) > [16:21:34,334,Default] at > customer.AddressBean.postCreate(AddressBean.java:112) > [16:21:34,335,Default] at > customer.AddressBean.ejbPostCreate(AddressBean.java:101) > [16:21:34,336,Default] at java.lang.reflect.Method.invoke(Native Method) > [16:21:34,336,Default] at > org.jboss.ejb.plugins.CMPPersistenceManager.createEntity(CMPPersis > tenceManag > er.java:239) > [16:21:34,337,Default] at > org.jboss.ejb.EntityContainer.createHome(EntityContainer.java:673) > [16:21:34,338,Default] at java.lang.reflect.Method.invoke(Native Method) > [16:21:34,339,Default] at > org.jboss.ejb.EntityContainer$ContainerInterceptor.invokeHome(Enti > tyContaine > r.java:926) > [16:21:34,340,Default] at > org.jboss.ejb.plugins.AbstractInterceptor.invokeHome(AbstractInter > ceptor.jav > a:74) > [16:21:34,341,Default] at > org.jboss.ejb.plugins.AbstractInterceptor.invokeHome(AbstractInter > ceptor.jav > a:74) > [16:21:34,342,Default] at > org.jboss.ejb.plugins.EntitySynchronizationInterceptor.invokeHome( > EntitySync > hronizationInterceptor.java:234) > [16:21:34,343,Default] at > org.jboss.ejb.plugins.EntityInstanceInterceptor.invokeHome(EntityI > nstanceInt > erceptor.java:151) > [16:21:34,343,Default] at > org.jboss.ejb.plugins.EntityLockInterceptor.invokeHome(EntityLockI > nterceptor > .java:104) > [16:21:34,344,Default] at > org.jboss.ejb.plugins.AbstractTxInterceptor.invokeNext(AbstractTxI > nterceptor > .java:100) > [16:21:34,345,Default] at > org.jboss.ejb.plugins.TxInterceptorCMT.runWithTransactions(TxInter > ceptorCMT. > java:156) > [16:21:34,346,Default] at > org.jboss.ejb.plugins.TxInterceptorCMT.invokeHome(TxInterceptorCMT > .java:56) > [16:21:34,347,Default] at > org.jboss.ejb.plugins.SecurityInterceptor.invokeHome(SecurityInter > ceptor.jav > a:106) > [16:21:34,348,Default] at > org.jboss.ejb.plugins.LogInterceptor.invokeHome(LogInterceptor.java:109) > [16:21:34,348,Default] at > org.jboss.ejb.EntityContainer.invokeHome(EntityContainer.java:441) > [16:21:34,349,Default] at > org.jboss.ejb.plugins.jrmp.server.JRMPContainerInvoker.invokeHome( > JRMPContai > nerInvoker.java:421) > [16:21:34,352,Default] at > org.jboss.ejb.plugins.jrmp.interfaces.HomeProxy.invokeHome(HomePro > xy.java:23 > 7) > [16:21:34,353,Default] at > org.jboss.ejb.plugins.jrmp.interfaces.HomeProxy.invoke(HomeProxy.java:182) > [16:21:34,354,Default] at $Proxy13.create(Unknown Source) > [16:21:34,355,Default] at > _0002feditCustomer_0002ejspeditCustomer_jsp_0._jspService(_0002fed > itCustomer > _0002ejspeditCustomer_jsp_0.java:141) > > > ... and the 2nd attempt to insert the same context into cache is > after the > return from the ejbPostCreate()... > > > [16:21:34,405,Default] TRACE: AddressBean.ejbPostCreate... end cid=peter, > id=peter_home > [16:21:34,406,Default] java.lang.Exception: JUST DUMPING STACK, key = > peter_home > [16:21:34,407,Default] at > org.jboss.ejb.plugins.AbstractInstanceCache.insert(AbstractInstanc > eCache.jav > a:242) > [16:21:34,408,Default] at > org.jboss.ejb.plugins.EntityInstanceInterceptor.invokeHome(EntityI > nstanceInt > erceptor.java:164) > [16:21:34,409,Default] at > org.jboss.ejb.plugins.EntityLockInterceptor.invokeHome(EntityLockI > nterceptor > .java:104) > [16:21:34,410,Default] at > org.jboss.ejb.plugins.AbstractTxInterceptor.invokeNext(AbstractTxI > nterceptor > .java:100) > [16:21:34,411,Default] at > org.jboss.ejb.plugins.TxInterceptorCMT.runWithTransactions(TxInter > ceptorCMT. > java:156) > [16:21:34,412,Default] at > org.jboss.ejb.plugins.TxInterceptorCMT.invokeHome(TxInterceptorCMT > .java:56) > [16:21:34,412,Default] at > org.jboss.ejb.plugins.SecurityInterceptor.invokeHome(SecurityInter > ceptor.jav > a:106) > [16:21:34,413,Default] at > org.jboss.ejb.plugins.LogInterceptor.invokeHome(LogInterceptor.java:109) > [16:21:34,414,Default] at > org.jboss.ejb.EntityContainer.invokeHome(EntityContainer.java:441) > [16:21:34,415,Default] at > org.jboss.ejb.plugins.jrmp.server.JRMPContainerInvoker.invokeHome( > JRMPContai > nerInvoker.java:421) > [16:21:34,416,Default] at > org.jboss.ejb.plugins.jrmp.interfaces.HomeProxy.invokeHome(HomePro > xy.java:23 > 7) > [16:21:34,417,Default] at > org.jboss.ejb.plugins.jrmp.interfaces.HomeProxy.invoke(HomeProxy.java:182) > [16:21:34,417,Default] at $Proxy13.create(Unknown Source) > [16:21:34,418,Default] at > _0002feditCustomer_0002ejspeditCustomer_jsp_0._jspService(_0002fed > itCustomer > _0002ejspeditCustomer_jsp_0.java:141) > > > My feeling is that the context should be inserted into cache between the > return from the ejbCreate() and the call to ejbPostCreate() > method. As soon > as the identity of the instance is established. This way the calls to > business methods in ejbPostCreate() will get an already cached > context via > AbstractInstanceCache.get() and this method (AbstractInstanceCache.get()) > will not blindly acquireContext(), set it's id, activate it and so on... > only > to later, when time has come to insert the created context, find out that > some other context with same id has already been inserted... > > This is my ignorant understanding of the matter (I have just > downloaded the > sources and began to study the EJB specs a few days ago)... > > Peter > > > > --__--__-- > > _______________________________________________ > Jboss-development mailing list > [EMAIL PROTECTED] > https://lists.sourceforge.net/lists/listinfo/jboss-development > > > End of Jboss-development Digest > > _______________________________________________ > Jboss-development mailing list > [EMAIL PROTECTED] > https://lists.sourceforge.net/lists/listinfo/jboss-development > _______________________________________________ Jboss-development mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/jboss-development