groovy

XmlNodePrinter doesn't escape special characters in attributes

Details

  • Type: Bug Bug
  • Status: Closed Closed
  • Priority: Major Major
  • Resolution: Fixed
  • Affects Version/s: 1.5.4
  • Fix Version/s: 1.5.5, 1.6-beta-1
  • Component/s: XML Processing
  • Labels:
    None
  • Number of attachments :
    0

Description

As per the mailing list:

import groovy.xml.StreamingMarkupBuilder

doc = """<Field Text="&lt;html&gt;Some Text&lt;/html&gt;" />"""
  
def d = new XmlParser().parseText(doc)

def writer = new StringWriter()
new XmlNodePrinter(new PrintWriter(writer)).print(d)
def result = writer.toString()   

println result

d = new XmlSlurper().parseText(doc)

writer = new StringWriter()
writer << new StreamingMarkupBuilder().bind {out << d}
result = writer.toString()

println result

produces:

<Field Text="<html>Some Text</html>"/>

<Field Text='&lt;html&gt;Some Text&lt;/html&gt;'></Field>

Activity

There are no comments yet on this issue.

People

Vote (0)
Watch (0)

Dates

  • Created:
    Updated:
    Resolved: