Leer XML 7Mb java.lang.OutOfMemoryError: Java heap space

elangelcaido
07 de Noviembre del 2009
Hola,

Tengo que leer un archivo XML de unos 7Mb (utilizo JDOM para leer el XML) y me salta la excepci贸n "java.lang.OutOfMemoryError: Java heap space"

Por supuesto, si recorto el XML para que me ocupe menos, lo leo sin problemas.

En principio, para solucionar este problema de espacio de memoria, podr铆a ampliar el espacio de la zona de intercambio de la M谩quina virtual de Java con -Xmx1500M, por ejemplo. Pero esta quiero que sea la 煤ltima alternativa posible, ya que esta aplicaci贸n se usar谩 en varios ordenadores y no es una opci贸n andar cambiando el espacio de la zona de intercambio de cada JVM.

驴Alguien sabr铆a decirme c贸mo solucionar el problema de "Java heap space" para poder leer archivo grandes?

Gracias por la ayuda

cemo
29 de Abril del 2010
Hay 2 maneras de leer un xml. Una es por DOM y otra es por SAX. Seguramente tu lo haces por DOM que hace que todo el documento XML se cargue en memoria. Si utilizas el SAX iras leyendo el XML parcialmente y asi soluciones el error. SAludos!!