Thanks, that worked. I created a dummy EntityResolver as follows and then used setEntityResolver on the SAXBuilder:<br>
<br>
import java.io.IOException;<br>
import java.io.StringReader;<br>
<br>
import org.xml.sax.EntityResolver;<br>
import org.xml.sax.InputSource;<br>
import org.xml.sax.SAXException;<br>
<br>
public class DummyEntityRes implements EntityResolver<br>
{<br>
&nbsp;&nbsp;&nbsp; public InputSource resolveEntity(String publicId, String systemId)<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; throws SAXException, IOException<br>
&nbsp;&nbsp;&nbsp; {<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; return new InputSource(new StringReader(&quot; &quot;));<br>
&nbsp;&nbsp;&nbsp; }<br>
<br>
}<br><br><div><span class="gmail_quote">On 28/11/05, <b class="gmail_sendername">Tatu Saloranta</b> &lt;<a href="mailto:cowtowncoder@yahoo.com">cowtowncoder@yahoo.com</a>&gt; wrote:</span><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<div><div><span class="e" id="q_107d51efe1fbf9bc_1"><b><i>Andrew Zahra &lt;<a href="mailto:andrew.zahra@gmail.com" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">andrew.zahra@gmail.com</a>&gt;</i></b>
 wrote:<blockquote style="border-left: 2px solid rgb(16, 16, 255); margin-left: 5px; padding-left: 5px;">
I am trying to parse a simple document being sent to me over TCP. I am
using the SAXBuilder class with its default constructor. Problem is the
XML doc I am receiving specifies a DTD. Even though I am not validating
the document I get an error saying that the external DTD file is not
found.<br>   <br> <br> If I create an empty DTD file it is happy, but I don't want to do this.<br> <br> Is there any way I can stop it trying to open the external DTD or supress the error and make it continue?<br> <br> I did try using setErrorHandler with an error handler that just returned on error but that didn't work.
<br></blockquote></span></div>The
reason SAX parser tries to read the DTD nonetheless is since it might
contain parsed entities that may be referenced by the document. Some
parsers do this lazily, ! ie. only if they encounter an unknown entity.<br> There are ways around this
problem, the simplest is probably to just create a dummy EntityResolver
that just resolves any references to the external DTD to return empty
content (or anything that's valid DTD; this should be easy): this
should resolve your problem.<br> <br> Another possibility would be
using parsers where DTD support can be disabled; StAX parsers for
example have a property to use that completely disables handling of
DTDs. ;-)<br> (I wrote StAXBuilder that can be used to build JDom documents using a StAX XMLStreamReader).<br><span class="sg"> <br>  -+ <span id="st" name="st" class="st0">Tatu</span> +-<br></span><span class="ad"> <br>
 <br></span></div><span class="ad"><p>
                </p><hr size="1"> <b>Yahoo! Personals</b><br> 
Single? There's someone we'd like you to meet.<br>
Lot's of someone's, actually. <a href="http://us.rd.yahoo.com/evt=36108/*http://personals.yahoo.com+%0D%0A" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">Yahoo! Personals</a>
<p></p></span><br>_______________________________________________<br>To control your jdom-interest membership:<br><a onclick="return top.js.OpenExtLink(window,event,this)" href="http://www.jdom.org/mailman/options/jdom-interest/youraddr@yourhost.com" target="_blank">
http://www.jdom.org/mailman/options/jdom-interest/youraddr@yourhost.com</a><br><br></blockquote></div><br>