Hi, I am very new to Avalon but like it already quite alot. I am using Phoenix to start my server (block) but I would like to use a ExcaliburComponentManager inside my block to be able to use roles, etc. I use the ComponentManager provided by Phoenix (4.0a3) as the parent manager of the ExcaliburComponentManager.
I just don't know at the moment how to get rid of the following exception: Phoenix 4.0a3 DEBUG 10182 [de.ebp.g] (): added Role de.ebp.worerkpool.Market with shorthand market for de.ebp.workerpool.MarketComp DEBUG 10182 [de.ebp.g] (): added Role de.ebp.workerpool.ProducerFactory with shorthand fileProducerFactory for de.ebp.globus.messageinput.FileProducerFactoryComp DEBUG 10182 [de.ebp.g] (): added Role de.ebp.workerpool.ConsumerFactory with shorthand fileConsumerFactory for de.ebp.globus.messageinput.FileConsumerFactoryComp DEBUG 10182 [de.ebp.g] (): looking up shorthand market, returning de.ebp.worerkpool.Market DEBUG 10182 [de.ebp.g] (): Adding component (de.ebp.worerkpool.Market = de.ebp.workerpool.MarketComp) DEBUG 10182 [de.ebp.g] (): Attempting to get Handler for: de.ebp.worerkpool.Market DEBUG 10182 [de.ebp.g] (): Handler type = org.apache.avalon.excalibur.component.DefaultComponentHandler DEBUG 10182 [de.ebp.g] (): ComponentHandler initialized for: de.ebp.workerpool.MarketComp DEBUG 10182 [de.ebp.g] (): Could not find ComponentHandler, attempting to create one for role: de.ebp.workerpool.Market DEBUG 10182 [de.ebp.g] (): Could not find component for role: de.ebp.workerpool.Market java.lang.NullPointerException at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:279) at java.lang.ClassLoader.loadClass(ClassLoader.java:290) at java.lang.ClassLoader.loadClass(ClassLoader.java:290) at java.lang.ClassLoader.loadClass(ClassLoader.java:253) at org.apache.avalon.excalibur.component.ExcaliburComponentManager.lookup(Excal iburComponentManager.java:273) at org.apache.avalon.excalibur.component.ExcaliburComponentManager.hasComponent (ExcaliburComponentManager.java:140) at de.ebp.globus.block.GlobusServerBlock.initialize(GlobusServerBlock.java:124) at org.apache.avalon.phoenix.components.application.LifecycleHelper.startup(Lif ecycleHelper.java:200) at org.apache.avalon.phoenix.components.application.DefaultApplication.runPhase (DefaultApplication.java:177) at org.apache.avalon.phoenix.components.application.DefaultApplication.start(De faultApplication.java:89) at org.apache.avalon.phoenix.components.kernel.DefaultKernel.startup(DefaultKer nel.java:125) at org.apache.avalon.phoenix.components.kernel.DefaultKernel.addApplication(Def aultKernel.java:170) at org.apache.avalon.phoenix.components.deployer.DefaultDeployer.deploy(Default Deployer.java:168) at org.apache.avalon.phoenix.components.embeddor.DefaultEmbeddor.deployFile(Def aultEmbeddor.java:351) at org.apache.avalon.phoenix.components.embeddor.DefaultEmbeddor.deployFile(Def aultEmbeddor.java:345) at org.apache.avalon.phoenix.components.embeddor.DefaultEmbeddor.deployFiles(De faultEmbeddor.java:330) at org.apache.avalon.phoenix.components.embeddor.DefaultEmbeddor.deployDefaultA pplications(DefaultEmbeddor.java:320) at org.apache.avalon.phoenix.components.embeddor.DefaultEmbeddor.execute(Defaul tEmbeddor.java:162) at org.apache.avalon.phoenix.frontends.CLIMain.execute(CLIMain.java:96) at org.apache.avalon.phoenix.frontends.CLIMain.main(CLIMain.java:64) at java.lang.reflect.Method.invoke(Native Method) at org.apache.avalon.phoenix.launcher.Main.main(Main.java:54) In my naive thinking things go really wrong here: ExcaliburComponentManager.hasComponent(ExcaliburComponentManager.java:140) But the Java source looks like this: 133 public boolean hasComponent( final String role ) 134 { 135 if ( ! m_initialized ) return false; 136 if ( m_disposed ) return false; 138 boolean exists = m_componentHandlers.containsKey( role ); 140 if ( ! exists && null != m_parentManager ) 141 { 142 exists = m_parentManager.hasComponent( role ); 143 } 145 return exists; 146 } Of course source and class files are both from the Excalibur 4.1 distribution. My _real_ problem seem to be documented in the following lines: DEBUG 10182 [de.ebp.g] (): Attempting to get Handler for: de.ebp.worerkpool.Market DEBUG 10182 [de.ebp.g] (): Handler type = org.apache.avalon.excalibur.component.DefaultComponentHandler DEBUG 10182 [de.ebp.g] (): ComponentHandler initialized for: de.ebp.workerpool.MarketComp DEBUG 10182 [de.ebp.g] (): Could not find ComponentHandler, attempting to create one for role: de.ebp.workerpool.Market So first a component handler is initialized for the role and then it couldn't be found. But I suppose I won't be able to get the clue out of it before I have the right source/class files. I tried to compile Excalibur from the provided source myself but didn't succeed: [javac] C:\Java\Avalon\Excalibur-4.1\src\scratchpad\org\apache\avalon\excalibur\cach e\store\test\MemoryStoreTestCase.java:19: cannot resolve symbol [javac] symbol : class AbstractCacheStoreTestCase [javac] location: class org.apache.avalon.excalibur.cache.store.test.MemoryStoreTestCase [javac] extends AbstractCacheStoreTestCase [javac] ^ I could get rid of this all probably by gettint everything from the CVS and doing it all myself. But I would really like to have an official distribution instead. Any hint would be helpful. Regards, Ole P.S.: I am using JDK 1.3.1 on Windows 2000 with Cygwin. -- Ole Bulbuk Tel.: 0331/74759/60 Ernst Basler + Partner Fax: 0331/74759/90 Tuchmacherstr. 47 E-Mail: mailto:[EMAIL PROTECTED] 14482 Potsdam WWW: http://www.ebp.de -- To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]> For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>