[jdom-interest] Document.getContent() only returning the root
element, not all xml child content elements as expected
Julius Schorzman
juliuss at gmail.com
Sun Mar 25 20:09:12 PST 2007
Great -- that's it, thanks! A misunderstanding of the javadoc... get's ya
every time. ;-)
On 3/25/07, Jason Hunter <jhunter at servlets.com> wrote:
>
> Hi Julius,
>
> document.getContent() returns all nodes directly under the document,
> which would be the root element and maybe some comments or processing
> instructions, and maybe a doctype. It's not designed to iterate through
> the full document. For that you can call document.getDescendants(). It
> gives you an iterator for all nodes matching the optional filter you
> pass it.
>
> -jh-
>
> Julius Schorzman wrote:
> > Hi all. I'm a bit flummoxed by an issue with JDom, which I've been
> > using for about two years now. It appears that Document.getContent is
> > only returning the root element of the document, not all of the elements
> > in the document. For example, here is some test code:
> >
> > private Document d;
> >
> > private void parse(){
> >
> > //output the xml to make sure it loaded correctly
> > XMLOutputter out = new XMLOutputter(Format.getPrettyFormat());
> > try {
> > out.output(d, System.out);
> > } catch (Exception ignored) {}
> >
> > //print out the number of elements returned by getContent
> > System.out.println( d.getContent( ).size() );
> >
> > //set the ID for this document
> > for ( Object o : d.getContent( ) ) {
> >
> > try {
> > System.out.println(((Element)o).getName());
> > } catch ( ClassCastException ignored ) { }
> >
> > }
> >
> > }
> >
> > The xml document is:
> >
> > <?xml version="1.0" encoding="UTF-8"?>
> > <test>
> > <a>
> > <b>
> > <c>
> > <d />
> > </c>
> > </b>
> > </a>
> > <a>
> > <b>
> > <c>
> > <d />
> > </c>
> > </b>
> > </a>
> > <a>
> > <b>
> > <c>
> > <d />
> > </c>
> > </b>
> > </a>
> > </test>
> >
> > And the outcome of this is:
> > [the xml document as shown above]
> > 1
> > test
> >
> > So, as you can see, the root element <test> is the one and only element
> > returned in the list returned by d.getContent( ). Can anyone explain
> > why this might be?
> >
> > Thanks! Please forgive me if this has been answered previously -- I
> > searched for quite a while and couldn't find a thread with this issue.
> >
> >
> > ------------------------------------------------------------------------
> >
> > _______________________________________________
> > To control your jdom-interest membership:
> > http://www.jdom.org/mailman/options/jdom-interest/youraddr@yourhost.com
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://www.jdom.org/pipermail/jdom-interest/attachments/20070325/b9a0528e/attachment.htm
More information about the jdom-interest
mailing list