[xwiki-users] Groovy and getXMLEncoded() question
Hello, I'm having a headache trying to understand why those 2 pieces of groovy do not generate exactly the same thing : 1)- <% // LOOP 10 times println ( '<event>' + xwiki.getXMLEncoded(blablabla) + '</event>' ) // END LOOP %> 2)- <% str = '' // LOOP 10 times str = str + '<event>' + xwiki.getXMLEncoded(blablabla) + '</event>\n' // END LOOP println(str) %> "blablabla" is a formatted text (in my case, the description field of an article for example). 1) produces what is expected : it writes 10 lines of text, beginning with '<event>', and special characters in "blablabla" are correctly translated. 2) produces any number of lines (> 10), because carriage returns inside "blablabla" have not been translated, and so many lines are written for each line expected. I 'm not sure if this is the right place for this, but if someone as an idea it would greatly help me ... Best Regards, Jeremie
Well.. first things first. Without seeing your loop construction, it's a bit hard to determine the problem. Here's a sample I adjusted from your second scenario: <% String str = '' [1..10].flatten().each{ str = str + '<event>' + it + xwiki.getXMLEncoded('this one\n')+ '</event>\n' } println(str) %> The result when shown in a standard XWiki page for this (just stuck it in a page), is predictable enough; no linebreaks and the <event /> tag is ignored since it thinks it's a custom element. Could you expand a bit more on what output you're getting, and what you're doing with it after (putting it in a field/passing it to xml/etc)? Here's what I get: --- 1this one2this one3this one4this one5this one6this one7this one8this one9this one10this one --- ________________________________ From: [email protected] [mailto:[email protected]] On Behalf Of BOUSQUET Jeremie Sent: 24 January 2008 16:05 To: [email protected] Subject: [xwiki-users] Groovy and getXMLEncoded() question Hello, I'm having a headache trying to understand why those 2 pieces of groovy do not generate exactly the same thing : 1)- <% // LOOP 10 times println ( '<event>' + xwiki.getXMLEncoded(blablabla) + '</event>' ) // END LOOP %> 2)- <% str = '' // LOOP 10 times str = str + '<event>' + xwiki.getXMLEncoded(blablabla) + '</event>\n' // END LOOP println(str) %> "blablabla" is a formatted text (in my case, the description field of an article for example). 1) produces what is expected : it writes 10 lines of text, beginning with '<event>', and special characters in "blablabla" are correctly translated. 2) produces any number of lines (> 10), because carriage returns inside "blablabla" have not been translated, and so many lines are written for each line expected. I 'm not sure if this is the right place for this, but if someone as an idea it would greatly help me ... Best Regards, Jeremie
participants (2)
-
BOUSQUET Jeremie -
Esbach, Brandon