Hi,
I think that this bug would affect us, so I decided to upgrade to cocoon revision as for today.

Let me know if you find any trouble...

Cheers,
cheche
--- Begin Message ---
I just found a big bug in our treeprocessor (2.1.8-dev and 2.2 are
effect, in 2.1.7 this works perfectly): if you have several pipeline
sections in the sitemap using different pipeline implementations, always
the first configured is used.
For example:
<map:pipeline type="expires">
...
</map:pipeline>
<map:pipeline type="noncaching">
  <map:match pattern="a">
  ...
</map:pipeline>

In the example above, the expires pipeline us even used if you request "a".
The problem is in the PipelineNode, line . The getProcessingPipeline()
method is called to set the error handler in each encountered pipeline
section. The InvokeContext checks in this method if a pipeline has
already been instantiated and only creates one if not.
I just checked in a quick fix which resets the processing pipeline in
the inform() method of the InvokeContext, but I'm not sure if this is
the best way. Imho we should only lookup the pipeline component if it is
really used.

Perhaps this is as well the cause of Reinhard's problem wrt caching.

Carsten
-- 
Carsten Ziegeler - Open Source Group, S&N AG
http://www.s-und-n.de
http://www.osoco.org/weblogs/rael/



--- End Message ---

Reply via email to