[jdom-interest] SAXBuilder hang when using InputStream
Joseph Bowbeer
jozart at csi.com
Thu Feb 28 03:46:06 PST 2002
See if this item in the FAQ helps:
http://www.jdom.org/docs/faq.html
Why does passing a document through a socket sometimes hang the parser?
Specifically: In your server, try reading the input stream into a buffer
before handing it off to SAXBuilder.
--- original message ---
From: uwaibel at t-online.de (Uli Waibel)
To: <jdom-interest at jdom.org>
Date: Wed, 27 Feb 2002 17:54:15 +0100
Subject: SAXBuilder hang when using InputStream
i try to build a document with SAXBuilder.build(java.io.InputStream);
The Inputstrem object is from a socket object. My client create a
document and send it with XMLOutputter to a server.
<<< Client >>>
XMLOutputter printer = new XMLOutputter();
BufferedOutputStream out = new BufferedOutputStream(
tester.getOutputStream() ); // tester is a socket object
printer.output(doc,out);
out.flush();
<<< Server >>>
SAXBuilder builder = new SAXBuilder(false);
Document doc = builder.build(in); <<-- it never comes back from
builder.build().
XMLOutputter printer = new org.jdom.output.XMLOutputter();
try
{
printer.output(data,System.out);
}
catch( java.io.IOException e ){e.printStackTrace();}
If the client closes the socket, I receive a the exception
org.jdom.JDOMException: Error in building: socket closed (code=0)
Sending the data (XMLOutputter.putput(doc,out) is working,
I checked these with a simple socket read on server side.
I tried these with JDOM 1.0Beta7 and with the latest version from CVS,
same error.
Has anybody an idear whats going wrong ?
Thanks,
Uli Waibel
More information about the jdom-interest
mailing list