You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@avalon.apache.org by Stephan Michels <st...@apache.org> on 2002/08/18 10:15:43 UTC
[ISSUE] ConfigurationException in ExcaliburComponentSelector
Hi,
FYI, there exists problems with the following code
of the ExcaliburComponentSelector:
> String instrumentableName =
> configuration.getAttribute( "instrumentable",
> configuration.getAttribute( "name" ) );
This conflicts with the class
org.apache.cocoon.components.treeprocessor.sitemap.ComponentsSelector
of the Cocoon, which added Component with an empty Configuration.
I have changed this class now, but perhaps the code should be
changed in the ExcaliburComponentSelector.
Thanks for your attention, Stephan Michels.
_______________________________________________________________________
Stephan Michels EMail: stephan@apache.org
ICQ: 115535699 Tel: +49-030-314-21583
----+----|----+----|----+----|----+----|----+----|----+----|----+----|-|
--
To unsubscribe, e-mail: <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>
Re: [ISSUE] ConfigurationException in ExcaliburComponentSelector
Posted by Leif Mortenson <le...@tanukisoftware.com>.
Stephan,
Sorry about that I made some assumptions about the way the selector was
being configured
and used.
I made the following change to fall back on the name of the element for
the instrumentable
name:
------
RCS file:
/home/cvs/jakarta-avalon-excalibur/component/src/java/org/apache/avalon/excalibur/component/ExcaliburComponentSelector.java,v
retrieving revision 1.11
diff -r1.11 ExcaliburComponentSelector.java
623a624,626
> // The instrumentable name will be set by first looking for a
name set using
> // the instrumentable attribute. If missing, the name
attribute is used.
> // Finally, the name of the configuration element is used.
625c628,629
< configuration.getAttribute( "instrumentable",
configuration.getAttribute( "name" ) );
---
> configuration.getAttribute( "instrumentable",
> configuration.getAttribute( "name",
configuration.getName() ) );
------
The goal of the addition of the instrumentation code into the ECM was to
add instrumentation
capabilities without affecting the API and thus any current users of the
ECM. If you have to
change the code to use it, then I screwed up.
I would like to understand a little better what is being done there.
The instrumentable name
is used to identify components created by a component handler as well as
identify the
component handler itself. It allows the InstrumentManager to track the
number of
components selected, released and outstanding for each handler.
You should be able to roll back the changes that you had to make to
Cocoon. If you
are still having problems, please send me the stack trace and I'll look
into it some more.
I also made some changes to the way the ECM registers its handlers and
instrumentable
components with the IM tonight. It should make it a lot more useful in
cases where
handler structure is being created dynamically.
Cheers,
Leif
Stephan Michels wrote:
>Hi,
>
>FYI, there exists problems with the following code
>of the ExcaliburComponentSelector:
>
>
>
>> String instrumentableName =
>> configuration.getAttribute( "instrumentable",
>> configuration.getAttribute( "name" ) );
>>
>>
>
>This conflicts with the class
>org.apache.cocoon.components.treeprocessor.sitemap.ComponentsSelector
>of the Cocoon, which added Component with an empty Configuration.
>
>I have changed this class now, but perhaps the code should be
>changed in the ExcaliburComponentSelector.
>
>Thanks for your attention, Stephan Michels.
>
>_______________________________________________________________________
> Stephan Michels EMail: stephan@apache.org
> ICQ: 115535699 Tel: +49-030-314-21583
>----+----|----+----|----+----|----+----|----+----|----+----|----+----|-|
>
>
>--
>To unsubscribe, e-mail: <ma...@jakarta.apache.org>
>For additional commands, e-mail: <ma...@jakarta.apache.org>
>
>
>
>
--
To unsubscribe, e-mail: <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>