Como gerar xml sem JDom?

14 respostas
javaAurelio

Alguem pode me ajudar
Queria gera um arquivo xml sem usar JDOM.

:lol:

14 Respostas

glaucioguerra

Qual o problema de utilizar o JDOM? Existe alguma restrição? Você pode criar a sua propria biblioteca para gerar xml, mas para que inventar o roda novamente :wink:

Existem diversos artigos na internet falando sobre o JDOM, é bem tranquilo de utilizar:

http://www.devmedia.com.br/visualizacomponente.aspx?comp=3330&site=6

Um abraço!

nbluis

Cara, na pratica xml é uma string, e nada mais …
API’s são muito boas para segurança e a validação dos xmls, mas nada impede de você fazer isso por conta própria … blza??
se você escrever um arquivo .xml com strings porém no formato certo … ok.;… não muda nada…

blza???

valeu…

Pedrosa

Isso pode te ajudar:

http://www.guj.com.br/java.tutorial.artigo.144.1.guj

javaAurelio

glaucioguerra:
Qual o problema de utilizar o JDOM? Existe alguma restrição? Você pode criar a sua propria biblioteca para gerar xml, mas para que inventar o roda novamente :wink:

Existem diversos artigos na internet falando sobre o JDOM, é bem tranquilo de utilizar:

http://www.devmedia.com.br/visualizacomponente.aspx?comp=3330&site=6

Um abraço!

Usar JDom eu sei
É para a certificacao de desenvolvedor J2SE… :smiley:

Abraço

javaAurelio

nbluis:
Cara, na pratica xml é uma string, e nada mais …
API’s são muito boas para segurança e a validação dos xmls, mas nada impede de você fazer isso por conta própria … blza??
se você escrever um arquivo .xml com strings porém no formato certo … ok.;… não muda nada…

blza???

valeu…

Assim é Facil, Cara :smiley:
Fazer XML é muito deselegante para uma Certificacao Java. Valeu…
:wink:

javaAurelio

Pedrosa:
Isso pode te ajudar:

http://www.guj.com.br/java.tutorial.artigo.144.1.guj

XStream é uma framework que nao faz parte da api padrao do java

MAs Ajudo falo!

Abraço

javaAurelio

Alguma outra dica ?

ramilani12

Como já disseram construa uma Classe que gere o XML ou seja vc reiventará a roda :slight_smile:

A

Já tentou usar o Staks (acho que é assim que chamam este pacote da Sun).?

javax.xml.stream.*;

Ats,
Endrigo Antonini

javaAurelio

Como eu ja disse é para certificacao java.

Tenho que usar api do Java padrao.

OK :shock:

javaAurelio

antonini:
Já tentou usar o Staks (acho que é assim que chamam este pacote da Sun).?

javax.xml.stream.*;

Essa api é do java 6.

Ainda nao tentei.

A

javaAurelio:

Essa api é do java 6.

Ainda nao tentei.

Essa api não é só para o Java 6.
Desde o Java 1.4 ela está disponível se não desde antes, afirmo isso pois utilizamos estas API’s dentro de nosso sistema que roda em 1.4…

Não encontrei foi o site para fazer download desta API para lhe passar.
Isso porque não procurei muito também né… heheheehe

Ats,
Endrigo Antonini

javaAurelio

Ai galera consegui.

Ontem antes de ir dormir fiz uma exemplo para gera xml.

mais tarde eu vou por o exemplo…

:smiley:

javaAurelio
/**
 * @author fabio.aurelio
 *
 */
import java.io.File;
import java.io.IOException;

import javax.swing.text.html.parser.Parser;
import javax.xml.transform.OutputKeys;
import javax.xml.transform.Result;
import javax.xml.transform.Transformer;
import javax.xml.transform.TransformerConfigurationException;
import javax.xml.transform.TransformerException;
import javax.xml.transform.TransformerFactory;
import javax.xml.transform.dom.DOMSource;
import javax.xml.transform.stream.*;

import javax.xml.parsers.DocumentBuilder; 
import javax.xml.parsers.DocumentBuilderFactory; 
import javax.xml.parsers.ParserConfigurationException; 
import org.w3c.dom.Document; 
import org.w3c.dom.Element; 
import org.xml.sax.SAXException;

/** 
* Classe responsável por gerar o arquivo XML 
* 
*/ 
public class PlacaXML { 

private Document documento; 
private DocumentBuilderFactory fabrica; 
private DocumentBuilder builder; 


	public PlacaXML(){ 
		fabrica = DocumentBuilderFactory.newInstance(); 
		try {
			builder = fabrica.newDocumentBuilder();
		} catch (ParserConfigurationException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		} 
		documento = builder.newDocument();
		getGera(documento);
		
	} 

	/** 
	 * Constroi o XML	 
	 */ 
	public Document getGera(Document doc){ 
 
		Element id = doc.createElement("id");
		id.setAttribute("cpf", "015465400718465");
		
		Element nome = doc.createElement("nome");
		nome.setTextContent("Fabio Aurelio Maciel Lima");
				
		Element fone = doc.createElement("fone");
		fone.setTextContent("+55 061 84790904");
		
		id.appendChild(nome);
		id.appendChild(fone);
		doc.appendChild(id);
		
			    
		try {
		Transformer tran = TransformerFactory.newInstance().newTransformer();
		tran.setOutputProperty(OutputKeys.INDENT, "yes");
		//OutputKeys.INDENT
		
		Result out = new StreamResult(System.out);
		tran.transform(new DOMSource(doc), out);
		
		} catch (TransformerException e) {
			e.printStackTrace();
		}
		
		System.out.print("OK");
		
		return doc;
	} 


	/**
	 * @param args
	*/
	public static void main(String[] args) {
		new PlacaXML();
	}

}

Resultado:

<?xml version="1.0" encoding="UTF-8"?> Fabio Aurelio Maciel Lima +55 061 84790904 OK

crie uma classe PlacaXML.java e é so rodar…

OK… . Valeu Galera :stuck_out_tongue:

Criado 1 de março de 2007
Ultima resposta 2 de mar. de 2007
Respostas 14
Participantes 6