JSON wrapped in XML responses needs to be serialized
with json.dumps not str() or quotes get mangled and
json.loads fails to parse the result
Change-Id: I65c6ddf0be383e71bf8d05e7293b514269a27213
Signed-off-by: Steven Hardy <shardy@redhat.com>
subelement = etree.SubElement(element, key)
if key in JSON_ONLY_KEYS:
if value:
- subelement.text = str(value)
+ # Need to use json.dumps for the JSON inside XML
+ # otherwise quotes get mangled and json.loads breaks
+ try:
+ subelement.text = json.dumps(value)
+ except:
+ subelement.text = str(value)
else:
self.object_to_element(value, subelement)
else: