cocoon-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Stuart Roebuck <>
Subject Help! Problems installing a user component and role into Cocoon 2
Date Thu, 09 May 2002 19:25:49 GMT
I'm trying to install a new 'user' component into Cocoon 2 but I'm 
hitting a problem which I can't seem to get a handle on:

Basically, I'm getting a the following stack dump:

> ERROR   (2002-05-09) 19:03.08:176   [sitemap.generator.database-
> access](/about_us_index.html) 
> HttpProcessor[8080][4]/DatabaseAccessGenerator: Can't get 
> DatabaseAccessManager component
> org.apache.avalon.framework.component.ComponentException: Could not 
> find component
>         at 
> org.apache.avalon.excalibur.component.ExcaliburComponentManager.lookup
> (
>         at 
> org.apache.cocoon.components.CocoonComponentManager.lookup
> (
>         at 
> org.apache.avalon.excalibur.component.DefaultComponentFactory$ComponentManagerProxy.
> lookup(
>         at 
> org.apache.avalon.excalibur.component.DefaultComponentFactory$ComponentManagerProxy.
> lookup(
>         at 
> com.adolos.cocoon.generation.DatabaseAccessGenerator.compose
> (
> ...

My new DatabaseAccessGenerator (generator) is composable and uses the 
given manager to lookup the new component called DatabaseAccessManager.  
This component is defined in my my.roles file:

> <?xml version="1.0"?>
> <role-list>
>   <role name="com.adolos.cocoon.util.DatabaseAccessManager"
>         shorthand="database-access-manager"
>         default-class="com.adolos.cocoon.util.DatabaseAccessManager"/>
> </role-list>

The my.roles file is referenced in my cocoon.xconf file as:

> <cocoon version="2.0" user-roles="/WEB-INF/my.roles">

This appears to be being accessed, as prior to putting in the preceding 
forward-slash this reference threw a runtime error as well.

The cocoon.xconf file also has an entry for the component like this (I'm 
not sure if this is really necessary):

>   <database-access-manager 
> class="com.adolos.cocoon.util.DatabaseAccessManager" 
> logger="core.database.access" />

I have some logging in place and I know that the compose and configure 
methods of my DatabaseAccessManager component are called prior to any 
attempt to use the component.

But, when my DatabaseAccessGenerator attempts to lookup the component it 
throws the 'Could not find component' exception listed above (top).

I've checked and double-checked that the role names match up throughout.

Any thoughts?

P.S. I've produced plenty of working generators in the past, but this is 
my first independent component so don't underestimate my ability to do 
something stupid!

            Public Key - 1024D/88DD65AF 2001-11-23 Stuart Roebuck (Adolos)
      Key fingerprint = 89D9 E405 F8B1 9B22 0FA2  F2C1 9E57 5AB1 88DD 65AF
Stuart Roebuck                        
Systems Architect                             Java, XML, MacOS X, XP, 
ADOLOS                                           <>

Please check that your question has not already been answered in the
FAQ before posting. <>

To unsubscribe, e-mail: <>
For additional commands, e-mail: <>

View raw message