You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@cocoon.apache.org by "Alexander Klimetschek (JIRA)" <ji...@apache.org> on 2007/06/21 16:53:26 UTC

[jira] Updated: (COCOON-2078) Profiling pipelines must not implement Configurable interface as they are already Parameterizable

     [ https://issues.apache.org/jira/browse/COCOON-2078?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Alexander Klimetschek updated COCOON-2078:
------------------------------------------

    Attachment: profiler-config-vs-param-fix.patch

This patch replaces the usage of configure() with parameterize(). This leads to a syntax change for the "sax-stream" parameter, you no longer specify it as attribute but as <parameter name="sax-stream" value="true" /> child element.

> Profiling pipelines must not implement Configurable interface as they are already Parameterizable
> -------------------------------------------------------------------------------------------------
>
>                 Key: COCOON-2078
>                 URL: https://issues.apache.org/jira/browse/COCOON-2078
>             Project: Cocoon
>          Issue Type: Bug
>          Components: Blocks: Profiler
>    Affects Versions: 2.2-dev (Current SVN)
>            Reporter: Alexander Klimetschek
>            Priority: Critical
>             Fix For: 2.2-dev (Current SVN)
>
>         Attachments: profiler-config-vs-param-fix.patch
>
>
> The most-recent change to both Profiling pipelines (revision 503964 in February 07) added the configuration "sax-stream" option and this was done by additionally implementing the Configurable interface. But as in BaseCachingProcessingPipeline (a base class) the interface Parameterizable is already implemented, and an Avalon component can be either one or the other [1], this is a bug. It's critical since the cache is retrieved in BaseCachingProcessingPipeline.parameterize(), but as Configurable has precedence over Parameterizable [2], the cache will be null and a NPE will be thrown during generation phase.
> [1] http://excalibur.apache.org/apidocs/org/apache/avalon/framework/parameters/Parameterizable.html
> [2] http://svn.apache.org/viewvc/cocoon/trunk/core/cocoon-sitemap/cocoon-sitemap-impl/src/main/java/org/apache/cocoon/core/container/spring/avalon/AvalonBeanPostProcessor.java?view=markup, see method postProcessBeforeInitialization()

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.