<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META http-equiv=Content-Type content="text/html; CHARSET=UTF-8">
<META content="MSHTML 6.00.2800.1276" name=GENERATOR>
<STYLE></STYLE>
</HEAD>
<BODY bgColor=#ffffff>
<DIV><FONT face=Arial size=2>Hi,</FONT></DIV>
<DIV><FONT face=Arial size=2>I am using JDOM for XML processing. I use
SAXBuilder. I am having memory problems when it deals with huge documents (like
10MB), even though it is using SAXBuidler. It throws OutOfMemoryError when I try
to build a 8MB document.</FONT></DIV>
<DIV><FONT face=Arial size=2>I assume it does not keep the whole tree in memory
if I use SAXBuilder. Does it? If what I assume is right, why is it running
out of memory while building the doc of 8MB xml? 8MB should not be enough
to make fail because of memory problems. right?</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>This is how I build a document:</FONT></DIV>
<DIV><FONT face=Arial
size=2>****************************************************************************************************</FONT></DIV>
<DIV><FONT face=Arial size=2> public Document
getDocumentfromString(String
xmlString)<BR> throws JDOMException,
IOException {<BR> Document schemaDoc =
null;<BR> SAXBuilder builder = new
SAXBuilder(false);<BR> String
resultingXML = null;<BR> byte[]
xmlBytes = null;</FONT></DIV>
<DIV> </DIV>
<DIV><FONT face=Arial size=2> try
{<BR> //get
the UTF 8 encoded
bytes<BR>
xmlBytes =
xmlString.getBytes("UTF8");<BR>
schemaDoc = builder.build(new
ByteArrayInputStream(xmlBytes));<BR> }
catch (UnsupportedEncodingException usee)
{<BR>
// system does not support UTF-8 encoding. use default
encoding <BR>
schemaDoc = builder.build(new
StringReader(xmlString));<BR>
}</FONT></DIV>
<DIV> </DIV>
<DIV><FONT face=Arial size=2> return
schemaDoc;<BR> }</FONT></DIV>
<DIV><FONT face=Arial
size=2>*****************************************************************************************************</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>Am I doing anything wrong to make it
fail while building a 8MB doc?</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>Do you think using JAXP API (again, using SAX) is
better memory wise?</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>Any help would be greatly appreciated!</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>Thanks,</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>Pramodh.</FONT></DIV></BODY></HTML>