Quebra de linha em arquivo XML

Olá galera!

Atualmente estou desenvolvendo um software que irá dar manutenção em um arquivo XML. Esse programa irá adicionar e remover elementos de dentro desse XML.
Tudo vai bem, o problema começa porque ao salvar, uma restrição que colocaram é a que a cada grupo de determinado elemento dentro do XML deverá haver uma linha em branco.
Ficaria algo assim:

  ...

  <!-- comentario -->
  <servletmap path="/jsp/index.jhtml" servlet="br.action.PaginaPrincipalAction">
    <action name="SUCESSO" return="/jsp/main.jsp" />
    <action name="ERRO_SISTEMA" return="/jsp/errorSistema.jsp" />
    <action name="ERRO" return="/jsp/error.jsp" />
  </servletmap>

  <!-- comentario -->
  <servletmap path="/jsp/noticia.jhtml" servlet="br.action.NoticiaAction">
    <action name="SUCESSO" return="/jsp/noticia.jsp" />
    <action name="ERRO_SISTEMA" return="/jsp/errorSistema.jsp" />
    <action name="ERRO" return="/jsp/error.jsp" />
  </servletmap>
  ...

Após fechar o elemento servletmap deverá haver uma nova quebra de linha antes de começar outro bloco de comentário e servletmap.

Alguém sabe como posso fazer isso com o JDOM ou outro framework?? Tentei procurar nos javadocs do JDOM e também na Web, mas não encontrei nada disso. A versão que uso do JDOM é a mais recente (1.1).

Já pensei em fazer uma especialização das classes de output do JDOM para formatar a saída ao meu modo, mas ainda não vi o que eu teria de problemas ao tentar fazer isso. Foi só uma idéia por enquanto. :roll:

Abraços!!!
E obrigado a quem puder ajudar. :wink:

Thiago

kara, ve se esse código te ajuda…

    public String organizadorXml(String xml) {
    
        int tamanho = xml.length();
        
        int inicio = 0;
        int fim = 0;
        
        String letra = &quot;&quot;;
        String newXml = &quot;&quot;;
        String resto = &quot;&quot;;
        
        for (int i = 1; i &lt;= xml.length(); i++) {
            
            letra = xml.substring(i-1, i);
            //System.out.println(letra);
            
            if (letra.equals(&quot;&gt;&quot;)) {
                fim = i;
                newXml = newXml + &quot;\n&quot; + xml.substring(inicio,fim);
                resto = xml.substring(fim,xml.length());
                xml = resto;
                i = 0;
            }
            
        }
        
        return newXml+&quot;\n&quot;+resto;

    }

Valeu. Mas tava vendo aqui, e acho que a saída será usar a org.jdom.output.SAXOutputter, porque nessa API terei controle sobre cada elemento a ser escrito. E o JDOM (estou usando esse) dá suporte a ela.

Tks!