Nope - I am outputting a div from my own custom component like this:
writer.startElement("div", this);
writer.writeAttribute("id", theId, null);
where the variable "theId" contains this string "Vandmaerke" in which
'ae' is a single special Danish character.
Thus I can only suspect MyFaces to be responsible for the conversion. I
am using MyFaces with facelets, but I presume the ResponseWriter is part
of MyFaces and not Facelets and thus I posted the question here (correct
me if I am wrong).
Randahl
Jeff Bischoff wrote:
Randahl,
Are you using a t:div?
Randahl Fink Isaksen wrote:
According to the JSF1.1 spec section 6.4 the ResponseWriter
implementation should be "performing
appropriate character encoding and escaping", but I think MyFaces
seems to have taken this a bit too far. Not only does it escape
characters which has a special meaning in XML, like the < character,
it also escapes national characters like the Danish 'ae' character
which it transforms to its escape equivalent ("æ"). This seems
to me to be completely unnecessary when outputting unicode formatted
XML, since unicode supports 'ae' and since 'ae' does not have a
special meaning in XML.
This turns out to be a problem in my application of MyFaces because I
would like to output something like this:
<div id="Vandmærke">
where the "æ" should in fact have been the danish letter 'ae'.
Can anyone elaborate on why MyFaces would do this and/or if this
behavior can be configured to work otherwise?
Thanks
Randahl