Estou usando JDom para gerar XML, gera normal, mas quando uso o metodo Namespace ele grava certo na primeira TAG e depois grava em branco nas outras, segue exemplo.
Codigo
Namespace ns = Namespace.getNamespace("http://www.portalfiscal.inf.br/nfe");
Element root0 = new Element("ConsCad", ns);
root0.setAttribute("versao", "2.00");
Element ele1 = new Element("infCons");
ele1.setNamespace(Namespace.NO_NAMESPACE);
Element oDump1 = new Element("xServ");
oDump1.setText("CONS-CAD");
Element oDump2 = new Element("UF");
oDump2.setText(cEstado);
Element oDump3 = new Element("CNPJ");
oDump3.setText(nDocumento);
ele1.addContent(oDump1);
ele1.addContent(oDump2);
ele1.addContent(oDump3);
root0.addContent(ele1);
doc = new Document().setRootElement(root0);
Resultad
<?xml version="1.0" encoding="UTF-8"?>
<ConsCad xmlns="http://www.portalfiscal.inf.br/nfe" versao="2.00">
<infCons xmlns=""> <--------------- aqui nao tem q ter este xmlns=""
<xServ>CONS-CAD</xServ>
<UF>SP</UF>
<CNPJ>11222333444455</CNPJ>
</infCons>
</ConsCad>