You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@cocoon.apache.org by Peter Klotz <pe...@blue-elephant-systems.com> on 2004/11/10 10:17:25 UTC

Custom Avalon component instantiation

Hi,

I'm an "expert" user of Avalon Phoenix (and Merlin soon) containers so I 
know how to make Avalon components really.
So I have been trying to use a Avalon component in the Cocoon (ECM) 
Avalon container but I'm having a problem.
My component should exist only once, has a ROLE, a work interface, 
implements Contextualizable, Configurable, Initializable and Serviceable.
The component is packed with debugging output and I have configured the 
logging category in logkit.xconf.
I've added my own roles file to cocoon.xconf :

<cocoon version="2.1" user-roles="/WEB-INF/mycomp.xconf">
...

and finally I've defined my component in cocoon.xconf. I tried two ways:

  <component role="com.bes.cocoon.MyInterface" 
class="com.bes.cocoon.MyComponent" logger="core.mycomp"/>

or

  <mycomp logger="core.mycomp"/>

where mycomp.xconf is

<?xml version="1.0" encoding="UTF-8"?>
<role-list>
  <role name="com.bes.cocoon.MyInterface" shorthand="mycomp" 
default-class="com.bes.cocoon.MyComponent"/>
</role-list>

The problem is that the component does not get instantiated at all. I 
don't get any logging output except from Cocoon components that tell me 
that the role has been added under my shortcut etc.
Also when I try to attach with a debugger I never get there, so it 
really seems that it does not get instantated and none of the 
contextualize(), service(), configure() and initialize() methods get 
called.
A component (input module) that uses this component fails in the 
service() method because it cannot get the component.

The question is why? I've crawled books, wikis, mailing lists, code 
samples and I cannot see what I'm doing wrong here.
Can anybody that has already successfully written a custom component 
help please?


Thanks, Peter

-- 
Peter Klotz
blue elephant systems GmbH       Tel.:  +49 711 451017-570
Wollgrasweg 49                   Fax.:  +49 711 451017-573
D-70599 Stuttgart                Email: peter.klotz@blue-elephant-systems.com

WWW:   www.blue-elephant-systems.com
Sitz  :          Stuttgart, AG Stuttgart, HRB 24106
Geschäftsführer: Joachim Hörnle, Thomas Gentsch, Holger Dietrich



---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@cocoon.apache.org
For additional commands, e-mail: users-help@cocoon.apache.org