[
https://issues.apache.org/jira/browse/LANG-898?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13799973#comment-13799973
]
Thomas Neidhart commented on LANG-898:
--------------------------------------
Afaik, it is not mandatory to escape CR & LF in xml documents, thus it is also
not done by default when calling StringEscapeUtils.escapeXml.
You can create your own translater that will also escape LF like this:
{noformat}
StringEscapeUtils.ESCAPE_XML.with(NumericEntityEscaper.between(0x09,
0x11)).translate(...);
{noformat}
> StringEscapeUtils un/escapexml inconsistant with escaped whitespace
> -------------------------------------------------------------------
>
> Key: LANG-898
> URL: https://issues.apache.org/jira/browse/LANG-898
> Project: Commons Lang
> Issue Type: Bug
> Components: lang.*
> Affects Versions: 3.1
> Environment: Windows 7, Java 7
> Reporter: Martin Barrs
>
> {noformat}
> In an escaped XML string with escaped whitespace, in this case linefeed (
> ), escapexml and unescapexml treat the linefeed inconsistently.
> unescape converts to a linefeed, yet escapexml does not convert
> linefeed back to
> Here's code and output...
> public static void main(String[] args) {
> String escaped =
> "<?xml version="1.0"
> encoding="iso-8859-1"?> <?xml version="1.0"
> encoding="iso-8859-1"?>";
> System.out.println(escaped);
> System.out.println();
> System.out.println(StringEscapeUtils.unescapeXml(escaped));
> System.out.println();
> System.out.println(StringEscapeUtils.escapeXml(StringEscapeUtils
> .unescapeXml(escaped)));
> }
>
> Output:
> <?xml version="1.0"
> encoding="iso-8859-1"?> <?xml version="1.0"
> encoding="iso-8859-1"?>
> <?xml version="1.0" encoding="iso-8859-1"?>
> <?xml version="1.0" encoding="iso-8859-1"?>
> <?xml version="1.0" encoding="iso-8859-1"?>
> <?xml version="1.0" encoding="iso-8859-1"?>
> {noformat}
--
This message was sent by Atlassian JIRA
(v6.1#6144)