estou aprendendo xml aqui, e não estou conseguindo imprimir todos xml que está no meu arquivo vendas.xml. No caso só consigo recuperar a primeira posição…
//Cria fabrica de documento.
DocumentBuilderFactory fabrica = DocumentBuilderFactory.newInstance();
//Cria documento
DocumentBuilder builder = fabrica.newDocumentBuilder();
//ler meu arquivo xml e salva em uma variavel.
Document documento = builder.parse("src/vendas.xml");
//Percorrendo todos Produtos.
NodeList produtos = documento.getElementsByTagName("produtos");
for(int i = 0; i< produtos.getLength(); i++ ) {
Element produto = (Element) produtos.item(i); //pega o elemento
int codigo = Integer.parseInt(produto.getElementsByTagName("codigo").item(i).getTextContent());
String nome = produto.getElementsByTagName("nome").item(i).getTextContent();
double preco = Double.parseDouble(produto.getElementsByTagName("preco").item(i).getTextContent());
Produto produtoValue = new Produto(codigo, nome,preco);
System.out.println(produtoValue);
}
meu xml
<?xml-stylesheet type="text/xml" href="src/template.xsl"?>
<venda moeda="real" xsd:noNamespaceSchemaLocation="venda2.xsd"
xmlns:xsd="http://www.w3.org/2001/XMLSchema-instance">
<formaDePagamento>Cartao</formaDePagamento>
<produtos>
<produto>
<codigo>1</codigo>
<nome>Livro da casa do código</nome>
<preco>59.90</preco>
</produto>
<produto>
<codigo>2</codigo>
<nome>Livro de java</nome>
<preco>59.90</preco>
</produto>
<produto>
<codigo>3</codigo>
<nome>JavaEE</nome>
<preco>59.90</preco>
</produto>
</produtos>
</venda>