The only thing I can think of is that the LogKit dependency is not resolved somehow. 1) What log do you get if you remove the Framework API resource declaration? 2) What log do you get if you add a "id=avalon-logkit:avalon-logkit" version="2.0" resource ??
Cheers Niclas On Friday 18 June 2004 18:04, Peter Jervgren wrote: > Hi, > > (anyone with any ideas about this...thanks in advance) /regards Peter > > I'm having trouble getting a container to classload an artifact (a jar > file) needed by a component declared within the container directive, se > my kernel.xml snippet below. The "hello" component impl.class is in the > cappuccino-1.0.0.jar and is internally using the class > org.apache.avalon.framework.logger.Logger. Thus the dependcy to the > avalon-framework-api-4.2.0.jar > > If I remove all reference to the Logger in the java source for the > HelloComponent everything is working properly, with a full lifecycle run > by the merlin kernel, but trying to use the Logger it fails. > > The avalon-framework-api-4.2.0.jar file is located in the local maven > repository, the directory > /home/petje/.maven/repository/avalon-framework/jars > I also tried using the fileset directive with this directory explicitly > set with the same malfunctional result. > > <?xml version="1.0" encoding="ISO-8859-1"?> > <kernel> > > <repository> > <hosts> > <host path="http://www.dpml.net/"/> > <host path="http://www.ibiblio.org/maven/"/> > </hosts> > </repository> > > <container name="gonzo"> > <classloader> > <classpath> > <fileset dir="/home/petje/cappuccino/target"> > <include name="cappuccino-1.0.0.jar" /> > </fileset> > <repository> > <resource id="avalon-framework:avalon-framework-api" > version="4.2.0"/> > </repository> > </classpath> > </classloader> > > <component name="hello" > class="com.euronetics.cappuccino.HelloComponent"/> > > </container> > > </kernel> > > > > This is the debug log...(look for the [WARN] statement) > > [DEBUG ] (kernel.logger): logging system established > [DEBUG ] (kernel.logger): adding category [kernel] > [DEBUG ] (kernel): logging system established > [DEBUG ] (kernel): repository established: > /home/petje/.maven/repository, http://www.dpml.net/, > http://www.ibiblio.org/maven/ > [DEBUG ] (kernel.logger): adding category [kernel] > [INFO ] (kernel): info report > ----------------------------------------------------------- > Merlin Kernel Environment Listing > ----------------------------------------------------------- > > ${user.dir} == /home/petje/bin > ${user.home} == /home/petje > > ${avalon.repository.cache} == /home/petje/merlin/system > ${avalon.repository.online} == true > ${avalon.repository.hosts} == > http://www.dpml.net,http://www.ibiblio.org/maven > > ${merlin.lang} == null > ${merlin.home} == /home/petje/merlin > ${merlin.system} == /home/petje/merlin/system > ${merlin.config} == /home/petje/merlin/config > ${merlin.kernel} == file:/home/petje/merlin/config/kernel.xml > ${merlin.logging.implementation} == > artifact:avalon-logging/avalon-logkit-impl#1.0-SNAPSHOT > ${merlin.logging.config} == null > ${merlin.runtime} == > artifact:avalon-activation/avalon-activation-impl#2.0-SNAPSHOT > ${merlin.override} == null > ${merlin.dir} == /home/petje/bin > ${merlin.temp} == /tmp > ${merlin.context} == /home/petje/bin/home > ${merlin.anchor} == /home/petje/bin > ${merlin.info} == true > ${merlin.debug} == true > ${merlin.audit} == false > ${merlin.server} == false > ${merlin.autostart} == true > ${merlin.code.security.enabled} == false > ${merlin.deployment.timeout} == 1000 > ${merlin.repository} == /home/petje/.maven/repository > ${merlin.repository.hosts} == > http://www.dpml.net/,http://www.ibiblio.org/maven/ > ${merlin.deployment} == > > ----------------------------------------------------------- > [INFO ] (kernel): building application model > [DEBUG ] (kernel.logger): adding root category > [DEBUG ] (kernel.logger): adding root category > [DEBUG ] (kernel.logger): adding root category > [DEBUG ] (classloader): base: ${user.dir} > [DEBUG ] (): included entries: 1 > [DEBUG ] (): repository declarations: 1 > [DEBUG ] (): repository 0 contains 1 entries. > [DEBUG ] (classloader): classpath: > file:/home/petje/cappuccino/target/cappuccino-1.0.0.jar;file:/home/petje/.m >aven/repository/avalon-framework/jars/avalon-framework-api-4.2.0.jar [DEBUG > ] (classloader.scanner): scanning: > file:/home/petje/cappuccino/target/cappuccino-1.0.0.jar > [WARN ] (classloader.scanner): Ignoring component type > [com.euronetics.cappuccino.HelloComponent] as the implementation class > contains a reference to the class > [org/apache/avalon/framework/logger/Logger] which does not exist in the > classloader. > [DEBUG ] (classloader.scanner): scanning: > file:/home/petje/.maven/repository/avalon-framework/jars/avalon-framework-a >pi-4.2.0.jar [DEBUG ] (classloader.types): type install count: 0 > [DEBUG ] (kernel.logger): adding root category > [DEBUG ] (kernel.logger): adding category [hello] > Exception in thread "main" > org.apache.avalon.composition.model.ModelException: Unable to construct > a new containment model: gonzo. > at > org.apache.avalon.composition.model.impl.DefaultModelFactory.createRootCont >ainmentModel(DefaultModelFactory.java:298) at > org.apache.avalon.merlin.impl.DefaultFactory.createApplicationModel(Default >Factory.java:479) at > org.apache.avalon.merlin.impl.DefaultFactory.create(DefaultFactory.java:245 >) at com.euronetics.cappuccino.Cappuccino.main(Cappuccino.java:81) Caused > by: org.apache.avalon.composition.model.ModelException: Unable to create a > nested deployment model: hello in the containment model /. at > org.apache.avalon.composition.model.impl.DefaultContainmentModelComponentHe >lper.createComponentContext(DefaultContainmentModelComponentHelper.java:150) > at > org.apache.avalon.composition.model.impl.DefaultContainmentModel.createComp >onentModel(DefaultContainmentModel.java:900) at > org.apache.avalon.composition.model.impl.DefaultContainmentModel.createDepl >oymentModel(DefaultContainmentModel.java:646) at > org.apache.avalon.composition.model.impl.DefaultContainmentModel.addModel(D >efaultContainmentModel.java:605) at > org.apache.avalon.composition.model.impl.DefaultContainmentModel.<init>(Def >aultContainmentModel.java:183) at > org.apache.avalon.composition.model.impl.DefaultModelFactory.createContainm >entModel(DefaultModelFactory.java:330) at > org.apache.avalon.composition.model.impl.DefaultModelFactory.createRootCont >ainmentModel(DefaultModelFactory.java:289) ... 3 more > Caused by: org.apache.avalon.composition.model.TypeUnknownException: > Unable to locate a component type descriptor for the component class > [com.euronetics.cappuccino.HelloComponent] in the classloader. Please > verify that the component classname is correct and that a component type > descriptor is included in a jar file available within the container > classloader. > at > org.apache.avalon.composition.model.impl.DefaultTypeRepository.getType(Defa >ultTypeRepository.java:248) at > org.apache.avalon.composition.model.impl.DefaultTypeRepository.getType(Defa >ultTypeRepository.java:213) at > org.apache.avalon.composition.model.impl.DefaultContainmentModelComponentHe >lper.createComponentContext(DefaultContainmentModelComponentHelper.java:125) > ... 9 more > > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] -- +------//-------------------+ / http://www.bali.ac / / http://niclas.hedhman.org / +------//-------------------+ --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
