[jdom-interest] Element.addContent(CDATA cdata) depreciation suggestion?
Jason Long
jason at supernovasoftware.com
Fri Feb 27 14:43:44 PST 2004
Thank you for the suggestion.
The following is currently doing exactly what I am looking for:
elt3.addContent((new CDATA(((new XMLOutputter()).outputString(elt2)))));
I would like to avoid creating another class just to do this one
operation.
My problem is that Element.addContent(CDATA cdata) is depreciated. I
looked in the javadoc for beta8 and beta9, but I could no note of its
depreciation in beta8 and it is not present in the src of beta9. Could
someone please offer a simple solution to this depreciated method?
Jason Long - CEO and Chief Software Engineer
Supernova Software - supernovasoftware.com
BS Physics, MS Chemical Engineering
-----Original Message-----
From: jdom-interest-admin at jdom.org [mailto:jdom-interest-admin at jdom.org]
On Behalf Of Bradley S. Huffman
Sent: Friday, February 27, 2004 9:31 AM
To: Jason Long
Cc: jdom-interest at jdom.org
Subject: Re: [jdom-interest] (no subject)
"Jason Long" writes:
> I am not sure I follow.
> My code is as follows:
>
> Element elt0 = new Element("story");
> Element elt1 = (Element) xpath.selectSingleNode(docJDOM);
> elt0.addContent(elt1.clone());
>
> This is currently serialized as:
>
> <story>
> <text>
> Test test test <br/>
> Test test test <br/>
> Test test test <br/>
> </text>
> </story>
>
> I need it to be as follows:
>
> </story>
> <text><![CDATA[
> Test test test <br/>
> Test test test <br/>
> Test test test <br/>
> ]]>
> </text>
> </story>
How about this, extend XMLOutputter and override printElement
public class MyOutputter extends XMLOutputter {
protected void printElement(Element element, Writer out,
int level, NamespaceStack stack) {
if ((element.getName()).equals("text")) {
out.write("<text>");
out.write("<![CDATA[");
outputElementContent(element, out);
out.write("]]>");
out.write("</text>");
}
else {
super.printElement(element, out, level, stack);
}
}
}
Brad
_______________________________________________
To control your jdom-interest membership:
http://lists.denveronline.net/mailman/options/jdom-interest/youraddr@you
rhost.com
More information about the jdom-interest
mailing list