Isto depende de uma s�rie de variaveis da aplica��o:
1) Quantos objetos s�o criados pela aplica��o, a partir dos dados do XML ?
Esses objetos ir�o compartilhar recursos com o DOM.
2) A aplica��o vai rodar stand-alone ou sob um aplication server?
Se for standalone, alguns parametros do JVM podem ser alterados para
suportar uma aloca��o maior de mem�ria.
Se estiver sob um aplication server, a aplica��o vai estar
compartilhando a mem�ria com outras aplica��es, neste caso as coisas
complicam bastante.
3) Conteudo das tags:
Isso influir� diretamente no tamanho dos objetos (Nodes) criados pelo
parser. Uma tag que contenha o nome de alguem, vai gerar um objeto maior que
uma tag que contenha a sua idade.
4) Forma de como o XML foi escrito (!!??):
Dependendo de como o XML foi escrito o parser poder� gerar mais ou menos
nodes.
Um XML escrito da forma abaixo vai gerar 6 objetos Nodes:
<hum>
<dois><tres>Teste</tres></dois>
</hum>
O mesmo XML reescrito da forma abaixo vai gerar 8 objetos Nodes:
<hum>
<dois>
<tres>Teste</tres>
</dois>
</hum>
O motivo � que o parser vai gerar 2 objetos do tipo Text, antes e depois
da tag <tres>.
Num programa BEM simples, que le um XML e imprime o seu conteudo, rodando
stand-alone, consegui ler um XML com 960000 tags, que gerou uns 29000000
objetos Nodes.
Isso foi executado num Linux com Java 1.3 e parser Xerces 2.0
Roberto Tatemoto
>
> Alguem sabe o tamanho maximo de arquivo que o DOM consegue fazer o
> parser se dar pau de mem�ria?
>
> []s,
> Marco.
>
> Bruno Borges wrote:
>
> > cara... nao use o DOM pra xml grande... ele cria objetos representando
> > cada node do xml... por isso q dah pau de memoria... pra arquivos
> > grandes, use o SAX (se o seu caso eh o parser do jdk1.4) ... este eh
> > sequencial... eh a melhor forma de tratar arquivos grandes... ;)
> >
> >
> >
> >
> >
> > ----- Original Message -----
> >
> > * From:* S�rgio Vict�ria <mailto:svictoria@;pakprint.com>
> >
> > * To:* [EMAIL PROTECTED] <mailto:java-list@;soujava.org.br>
> >
> > * Sent:* Wednesday, October 16, 2002 7:49 PM
> >
> > * Subject:* [java-list] xml com problemas de memoria
> >
> >
> > Alguem poderia me ajudar quando tento fazer um parse num arquivo
> > xml grande, ocorre um erro de memoria
> >
> > java.lang.OutOfMemoryError
> > Exception in thread main
> > Stack trace not available.
> >
> > Ja tentei paramentros de memoria mas nada resolveu (-Xms128M
> > -Xmx1024), sendo que minha maquina possui 1 G. de Ram
> >
> >
> > import java.io.*;
> > import java.util.*;
> > import org.jdom.*;
> >
> >
> > List lLinhas = ((Element)lRoot.get(2)).getChildren();
> > for(int i=0; i< lLinhas.size(); i++){
> > sp.parse((Element)lLinhas.get(i));
> > Map m = sp.getAll();
> > m.putAll(headers);
> > insertListaPreco(m);
> > }
> >
> >
> >
> > public void insertLista(Map values) {
> > idempresa= (String)values.get("IdEmpresa");
> > }
> >
> > private String idempresa="";
> >
> > Grato!
> >
> >
> >
> >
> >
> >
> >
> >
> > *S�rgio da Vict�ria*
> > Pakprint - Portal do Papel e Celulose
> > www.pakprint.com.br
> > Avenida Ibirapuera, 2033 - 20� andar
> > 04029-100 - S�o Paulo/SP - Brasil
> > Tel: 55 11 5054-5210 / 5054-5215
> > Fax: 55 11 5054-5222
> >
> > [ole0.bmp] [ole1.bmp]
> >
>
>
>
------------------------------ LISTA SOUJAVA ----------------------------
http://www.soujava.org.br - Sociedade de Usu�rios Java da Sucesu-SP
d�vidas mais comuns: http://www.soujava.org.br/faq.htm
regras da lista: http://www.soujava.org.br/regras.htm
historico: http://www.mail-archive.com/java-list%40soujava.org.br
para sair da lista: envie email para [EMAIL PROTECTED]
-------------------------------------------------------------------------