[richfaces-issues] [JBoss JIRA] Updated: (RF-10277) XML Parsing Error in response due to invalid character in attribute
Nick Belaevski (JIRA)
jira-events at lists.jboss.org
Mon Jan 24 11:03:50 EST 2011
[ https://issues.jboss.org/browse/RF-10277?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Nick Belaevski updated RF-10277:
--------------------------------
Assignee: Nick Belaevski
Fix Version/s: Future_3.X
> XML Parsing Error in response due to invalid character in attribute
> --------------------------------------------------------------------
>
> Key: RF-10277
> URL: https://issues.jboss.org/browse/RF-10277
> Project: RichFaces
> Issue Type: Bug
> Security Level: Public(Everyone can see)
> Affects Versions: 3.3.3.Final
> Environment: richfaces 3.3.3
> myfaces 1.2.9
> facelets
> neko parser 1.9.12
> Reporter: Michael Heinen
> Assignee: Nick Belaevski
> Labels: Rendering
> Fix For: Future_3.X
>
>
> An ajax response is not updated on clientside if it contains ISO control characters like 'START OF HEADING' (in windows Alt + 01 or U+0001) in attributes of tags.
> (see http://www.fileformat.info/info/unicode/char/1/index.htm)
> The ajax console shows during rendering:
> error[14:57:16,523]: Error parsing XML
> error[14:57:16,523]: Parse Error: XML Parsing Error: Invalid unicode character.
> The parser error occurs in combination with neko filter if such a special character is used as an attribute value, e.g. as value of an inputText field.
> This is caused by a wrong transformation in class org.ajax4jsf.xml.serializer.ToXHTMLStream.
> Method ToXHTMLStream.writeAttrString contains following check:
> String outputStringForChar = m_charInfo.getOutputStringForChar(ch);
> if (null != outputStringForChar)
> {
> writer.write(outputStringForChar);
> }
> else if (escapingNotNeeded(ch))
> {
> writer.write(ch); // no escaping in this case
> }
> else
> {
> writer.write("&#");
> writer.write(Integer.toString(ch)); //THIS IS CALLED!
> writer.write(';');
> }
> The 'START OF HEADING' control char is transformed to the entity  which results in an parsing error on client side.
> The char is correctly processed and displayed in NON-Ajax requests.
> The char is correctly processed and displayed in Ajax requests in outputfields (as \u0001).
> The char is correctly processed but not displayed in the response if tidy filter is used for ajax requests.
--
This message is automatically generated by JIRA.
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
More information about the richfaces-issues
mailing list