<html>
<head>
<meta content="text/html; charset=ISO-8859-1"
http-equiv="Content-Type">
</head>
<body bgcolor="#FFFFFF" text="#000000">
Hi Craig.<br>
<br>
getDescendants returns an Iterator<Element> not an
Iterable<Element><br>
<br>
Now that I think about it, it is a mess, but, that's because JDOM
1.x returned an iterator.<br>
<br>
Technically your code should be:<br>
<br>
for (Iterator<Element> it =root.getDescendants(tableFilter);
it.hasNext(); ) {<br>
<div id=":126"> tableCount++;<br>
}<br>
<br>
I wonder whether I can make an 'Iterable' return value too.... it
makes sense to, but I can't change the current return value for
getDescendants without breaking compatibility...<br>
<br>
<br>
suggestions?<br>
<br>
Rolf<br>
</div>
<br>
<br>
<br>
On 15/03/2012 3:59 PM, Craig Noah wrote:
<blockquote
cite="mid:CALi3K=Lkod5FdEZ2TCX7jj36AN_R5TYrgxUqco6GFNfxCt9LdQ@mail.gmail.com"
type="cite">I've downloaded the latest JDom2 beta today and am
working to incorporate it into some new code. I am developing
against Java6, so I would expect iterators to work. However, the
following code fails to compile (with JDom2 includes):<br>
<br>
SAXBuilder sax = new SAXBuilder();<br>
Document xml = sax.build (source); // source is a File object<br>
Element root = xml.getRootElement();<br>
ElementFilter tableFilter = new ElementFilter ("Table");<br>
int tableCount = 0;<br>
for (Element table : root.getDescendants(
<div id=":126">tableFilter)) {<br>
tableCount++;<br>
}<br>
<br>
The compile-time error that I get states, "Can only iterate over
an array or an instance of java.lang.Iterable". Since
Element.getDescendants (Filter<F>) returns a
java.util.Iterator<F>, I would expect my code to compile
and work. What am I missing?<br>
<br>
Sincerely,<br>
Craig</div>
<br>
<fieldset class="mimeAttachmentHeader"></fieldset>
<br>
<pre wrap="">_______________________________________________
To control your jdom-interest membership:
<a class="moz-txt-link-freetext" href="http://www.jdom.org/mailman/options/jdom-interest/youraddr@yourhost.com">http://www.jdom.org/mailman/options/jdom-interest/youraddr@yourhost.com</a></pre>
</blockquote>
<br>
</body>
</html>