I commented out the attempt to use our implementation which also fixes the problem :-) If you think that using our implementation actually provides any more functionality than the default implementation could you merge in your changes and undo my edit to RMIRegistryService? thanks david jencks On Oct 15, 2009, at 9:57 AM, Jarek Gawor wrote: > Ah, the RMIClassLoaderSpiImpl needs to be on the system classloader. > > I created a tiny jar file with the RMIClassLoader* classes and put it > in ./target/assembly/lib directory and started the server: > > Module 1/5 org.apache.geronimo.framework/j2ee-system/3.0-SNAPSHOT/car > started in .000s > Module 2/5 org.apache.geronimo.framework/rmi-naming/3.0-SNAPSHOT/car > started in .260s > Module 3/5 org.apache.geronimo.framework/plugin/3.0-SNAPSHOT/car > started in .169s > Module 4/5 org.apache.geronimo.framework/j2ee-security/3.0-SNAPSHOT/ > car > started in .471s > Module 5/5 org.apache.geronimo.framework/server-security-config/3.0- > SNAPSHOT/car > started in .070s > Startup completed in 5.158s seconds > Listening on Ports: > 1099 0.0.0.0 RMI Naming > 9999 0.0.0.0 JMX Remoting Connector > > Geronimo Application Server started > > Jarek > > On Thu, Oct 15, 2009 at 11:53 AM, Jarek Gawor > wrote: >> I just committed a fix for this problem. The Bundle.getResources() is >> allowed to return null but ClassLoader.getResources() is not. So I >> updated the BundleClassLoader.java to return an empty enumeration if >> Bundle.getResources() returns null. >> >> Now I'm getting: >> >> Module 4/5 org.apache.geronimo.framework/j2ee-security/3.0-SNAPSHOT/ >> car >> ERROR: Error starting >> mvn:org.apache.geronimo.framework/j2ee-system/3.0-SNAPSHOT/car >> (org.osgi.framework.BundleException: Activator start error in bundle >> org.apache.geronimo.framework.j2ee-system [49].) >> java.lang.NoClassDefFoundError: >> org.apache.geronimo.kernel.rmi.RMIClassLoaderSpiImpl >> at >> java >> .rmi.server.RMIClassLoader.initializeProvider(RMIClassLoader.java: >> 668) >> at java.rmi.server.RMIClassLoader.access >> $000(RMIClassLoader.java:93) >> at java.rmi.server.RMIClassLoader$1.run(RMIClassLoader.java: >> 103) >> at java.security.AccessController.doPrivileged(Native Method) >> at >> java.rmi.server.RMIClassLoader.(RMIClassLoader.java:100) >> at >> sun >> .rmi >> .server.MarshalOutputStream.annotateClass(MarshalOutputStream.java: >> 75) >> at >> java >> .io.ObjectOutputStream.writeNonProxyDesc(ObjectOutputStream.java: >> 1250) >> at >> java.io.ObjectOutputStream.writeClassDesc(ObjectOutputStream.java: >> 1203) >> at >> java >> .io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java: >> 1387) >> at >> java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1150) >> at >> java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:326) >> at sun.rmi.registry.RegistryImpl_Stub.bind(Unknown Source) >> at >> com.sun.jndi.rmi.registry.RegistryContext.bind(RegistryContext.java: >> 120) >> at >> com >> .sun.jndi.toolkit.url.GenericURLContext.bind(GenericURLContext.java: >> 208) >> at javax.naming.InitialContext.bind(InitialContext.java:400) >> at >> javax >> .management >> .remote.rmi.RMIConnectorServer.bind(RMIConnectorServer.java:625) >> at >> javax >> .management >> .remote.rmi.RMIConnectorServer.start(RMIConnectorServer.java:412) >> at >> org >> .apache.geronimo.jmxremoting.JMXConnector.doStart(JMXConnector.java: >> 207) >> >> Jarek >> >> On Thu, Oct 15, 2009 at 3:05 AM, David Jencks >> wrote: >>> I cleaned up a bunch of dependency problems and am getting the build >>> further. I now have 3 plugins starting quickly on the first try >>> and have >>> fixed a class visibility problem in the JMXConnector. However, >>> I'm now >>> seeing this exception (if I debug in the right place) trying to >>> start the >>> JMXConnector gbean which tries to use jndi... >>> >>> java.lang.NullPointerException >>> at >>> com.sun.naming.internal.VersionHelper12$InputStreamEnumeration >>> $1.run(VersionHelper12.java:197) >>> at java.security.AccessController.doPrivileged(Native Method) >>> at >>> com >>> .sun >>> .naming >>> .internal >>> .VersionHelper12 >>> $InputStreamEnumeration.getNextElement(VersionHelper12.java:194) >>> at >>> com >>> .sun >>> .naming >>> .internal >>> .VersionHelper12 >>> $InputStreamEnumeration.hasMore(VersionHelper12.java:214) >>> at >>> com >>> .sun >>> .naming >>> .internal >>> .ResourceManager.getApplicationResources(ResourceManager.java:470) >>> at >>> com >>> .sun >>> .naming >>> .internal >>> .ResourceManager.getInitialEnvironment(ResourceManager.java:159) >>> at javax.naming.InitialContext.init(InitialContext.java:219) >>> at javax.naming.InitialContext.(InitialContext.java: >>> 197) >>> at >>> javax >>> .management >>> .remote.rmi.RMIConnectorServer.bind(RMIConnectorServer.java:619) >>> at >>> javax >>> .management >>> .remote.rmi.RMIConnectorServer.start(RMIConnectorServer.java:412) >>> at >>> org >>> .apache >>> .geronimo.jmxremoting.JMXConnector.doStart(JMXConnector.java:206) >>> at >>> org >>> .apache >>> .geronimo >>> .gbean.runtime.GBeanInstance.createInstance(GBeanInstance.java:953) >>> at >>> org >>> .apache >>> .geronimo >>> .gbean >>> .runtime >>> .GBeanInstanceState.attemptFullStart(GBeanInstanceState.java:269) >>> at >>> org >>> .apache >>> .geronimo >>> .gbean.runtime.GBeanInstanceState.start(GBeanInstanceState.java:103) >>> at >>> org >>> .apache >>> .geronimo >>> .gbean >>> .runtime.GBeanInstanceState.startRecursive(GBeanInstanceState.java: >>> 125) >>> at >>> org >>> .apache >>> .geronimo >>> .gbean.runtime.GBeanInstance.startRecursive(GBeanInstance.java:542) >>> at >>> org >>> .apache >>> .geronimo >>> .kernel.basic.BasicKernel.startRecursiveGBean(BasicKernel.java:385) >>> at >>> org >>> .apache >>> .geronimo >>> .kernel >>> .config >>> .ConfigurationUtil.startConfigurationGBeans(ConfigurationUtil.java: >>> 459) >>> at >>> org >>> .apache >>> .geronimo >>> .kernel >>> .config >>> .KernelConfigurationManager.start(KernelConfigurationManager.java: >>> 223) >>> at >>> org >>> .apache >>> .geronimo >>> .kernel >>> .config >>> .SimpleConfigurationManager >>> .startConfiguration(SimpleConfigurationManager.java:713) >>> at >>> org >>> .apache >>> .geronimo.system.osgi.BootActivator.start(BootActivator.java:126) >>> at >>> org >>> .apache >>> .felix >>> .framework.util.SecureAction.startActivator(SecureAction.java:667) >>> at >>> org.apache.felix.framework.Felix.activateBundle(Felix.java:1699) >>> at org.apache.felix.framework.Felix.startBundle(Felix.java: >>> 1621) >>> at >>> org.apache.felix.framework.Felix.setActiveStartLevel(Felix.java: >>> 1076) >>> at >>> org.apache.felix.framework.StartLevelImpl.run(StartLevelImpl.java: >>> 264) >>> at java.lang.Thread.run(Thread.java:637) >>> >>> >>> Anyone have a clue what might be wrong? >>> >>> thanks >>> david jencks >>> >>> >>