Você consegue trabalhar com os métodos getChildren, getChildrenText e outros métodos de acesso a tags e conteúdo do XML.
Porém, para persistir uma alteração no XML, você terá de salva-lo novamente em disco.
Para gerar o XML de saída, vou lhe dar uma sugestão.
Conhece JAXB? Em três linhas você gera um XML de saída e trabalha com objetos JAVA, somente com get e setters.
Ou seja, cria uma classe que contenha uma lista de objetos, a classe principal é o “Root” do seu XML e a classe que será adicionada a lista são as tags que se repetem.
Basta usar os annotations do JAXB e ser feliz.
Edit: só para ficar claro, quando me refiro aos gets e setters, são das classes que representam o XML de saída. Para criar o XML em disco, ai vai usar método como marshal e unmarshal
Preciso excluir o nó pelo num_inscricao e inserir em outro xml.
Primeiro passo, como excluo?[/quote]
Só não posso deixar de comentar novamente que na minha humilde opinião, o JAXB é muito mais simples e fácil.
Para a sua pergunta, use o método do JDom e remova a tag.
Algo como: element.removeChild(oldChild);. O parametro oldChild é um objeto do tip Node.
Para gerar o XML atualizado, precisa usar o Documento no qual está trabalhando e a partir dele gerar o novo XML em disco.
[quote=andsuriano]Obrigado pela dica. Caso queira utilizar o JAXB, teria que mudar muito do codigo??
Acompanhou o inicio do desenvolvimento???[/quote]
Não. Basta criar uma classe com o annotation @XmlRootElement no inicio de sua classe e declarar cada atributo da mesma com o nome que quer gerar a tag xml.
Se preferir, podes usar a tag @XmlElement.
Exemplo:
@XmlRootElement(name = "NomeDaTagRootDoXml")
public class SuaClasse {}
Para que a tag não exista, basta fazer com o que um atributo de sua classe seja null e ela não será gerada.
Eu li e entendi que precisas gerar dois xml de saída, creio que seja mais fácil e prático que JDOM.
sobre configurar a memória… o ideal seria criar um ShellScript para chamar o programa com as configurações que você julgar necessárias.
se for ruindows… crie uma bat.