cocoon-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Simone Gianni <simo...@apache.org>
Subject Re: Unbalanced tags not triggering endTransformingElement in Transformer
Date Mon, 23 Nov 2009 17:40:59 GMT
Hi Alexander,
in SAX parsing of the namespace is not "mandatory". That is, when the 
sax event is constructed, the namespace is given, but nothing is 
checking if you are considering it or not.

Some parsers do enforce validation, so incorrect namespaces are detected 
during the parsing phase, but a normal "sax passthru" (as is the cocoon: 
protocol) does not perform such validation. So if incorrect namespaces 
are present (or even malformed XML up to some extent) you might see a 
different behavior.

Hope this helps,
Simone

Lochschmied, Alexander wrote:
>
> It’s resolved. My elements didn’t have the right namespace.
>
> I still don’t understand why there is a difference between source 
> being a file VS other processing step though.
>
> *From:* Lochschmied, Alexander
> *Sent:* Freitag, 20. November 2009 10:31
> *To:* 'dev@cocoon.apache.org'
> *Subject:* RE: Unbalanced tags not triggering endTransformingElement 
> in Transformer
>
> Hello again!
>
> I think I was wrong, unbalanced tags do not seem to cause it. Here is 
> sample input XML for my transformer:
>
> <rowset xmlns="http://www.vishay.com/rowspan/1.0">
>
> <row>
>
> <P1000>abc</P1000>
>
> <P1001>def</P1001>
>
> <T8400>
>
> <img src="small.jpg">img</img>
>
> <br>br</br>
>
> <a href="javascript:void(0)" onClick="foo(42)">Enlarge</a>
>
> </T8400>
>
> The elements inside T8400 (img, br, a) do not trigger 
> endTransformingElement() but they do trigger 
> startTransformingElement(). And again: This is only a problem if the 
> input XML is coming from another Cocoon processing step. It is not a 
> problem if the input XML is read from file system (with 
> FileGenerator). This is actually the most confusing part for me.
>
> If input comes from a file, they do generate the end events.
>
> Any pointers for me?
>
> Thanks,
> Alexander
>
> *From:* Lochschmied, Alexander
> *Sent:* Donnerstag, 19. November 2009 14:23
> *To:* 'dev@cocoon.apache.org'
> *Subject:* RE: Unbalanced tags not triggering endTransformingElement 
> in Transformer
>
> To avoid confusion, please swap the pattern values of my example; “OK” 
> should be “NOT_OK” and vice versa.
>
> Let me call <br/> “unbalanced” element as opposed to <br></br>.
>
> I’m extending AbstractSAXTransformer and noticed that unbalanced 
> elements do not trigger endTransformingElement(…) if the source (or 
> generator) is cocoon:/something.
>
> Example:
>
> 1. Unbalanced tags do NOT trigger endTransformingElement(…)
>
> <map:match pattern="NOT_OK">
>
> <map:generate src="cocoon:/something"/>
>
> <map:transform type="custom-transformer"/>
>
> <map:serialize type="xml"/>
>
> </map:match>
>
> 2. Unbalanced tags do trigger endTransformingElement(…)
>
> <map:match pattern="OK">
>
> <map:generate src="same_something_as_above_but_now_as_a_file.xml"/>
>
> <map:transform type="custom-transformer"/>
>
> <map:serialize type="xml"/>
>
> </map:match>
>
> Can somebody explain what I could possibly be missing or is that a bug 
> in Cocoon?
>
> Thanks,
> Alexander
>
> *From:* Lochschmied, Alexander
> *Sent:* Donnerstag, 19. November 2009 13:46
> *To:* dev@cocoon.apache.org
> *Subject:* Unbalanced tags not triggering endTransformingElement in 
> Transformer
>
> Hello!
>
> Let me call <br/> “unbalanced” element as opposed to <br></br>.
>
> I’m extending AbstractSAXTransformer and noticed that unbalanced 
> elements do not trigger endTransformingElement(…) if the source (or 
> generator) is cocoon:/something.
>
> Example:
>
> 1. Unbalanced tags do NOT trigger endTransformingElement(…)
>
> <map:match pattern="OK">
>
> <map:generate src="cocoon:/something"/>
>
> <map:transform type="custom-transformer"/>
>
> <map:serialize type="xml"/>
>
> </map:match>
>
> 2. Unbalanced tags do trigger endTransformingElement(…)
>
> <map:match pattern=" NOT_OK">
>
> <map:generate src="same_something_as_above_but_now_as_a_file.xml"/>
>
> <map:transform type="custom-transformer"/>
>
> <map:serialize type="xml"/>
>
> </map:match>
>
> Can somebody explain what I’m could possibly be missing or is that a 
> bug in Cocoon?
>
> Thanks,
>
> Alexander
>
> Alexander Lochschmied
>
> Web Programmer - Internet and Commerce
>
> IT Global Web Services
>
> Information Technology
>
> Phone: +49 92 8771 2682
>
> Fax +49 92 8771 2545
>
> Website: www.vishay.com <http://www.vishay.com/>
>
> Vishay Electronic GmbH
>
> Geheimrat-Rosenthal-Str. 100
>
> D-95100 Selb
>
> Amtsgericht/County Court Hof HRB 2894,
>
> Geschäftsführer/Managing Directors: Sieglinde Janker-Buecherl, Arnold Rohr
>


-- 
Simone Gianni            CEO Semeru s.r.l.           Apache Committer
http://www.simonegianni.it/


Mime
View raw message