XStream - Ler XML dando NPE

2 respostas
crpablo

Fala galerinha...

Estou criando uma classe que serialize(em disco) meus objetos em XML e leia esses XML's.
Porém tá dando um NPE que não conseguí resolver.

Alguém pode dar uma dica?... segue o cod.
package serialização;

import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.ObjectInputStream;
import java.io.Reader;
import java.util.List;

import com.thoughtworks.xstream.XStream;

public class SerializaXStream {

	private XStream xstream = null;

	public void geraXML(List listaObj, String nomeArquivo) {

		xstream = new XStream();

		String objetosXML = xstream.toXML(listaObj);

		try {
			FileOutputStream gravaXml = new FileOutputStream(nomeArquivo);
			gravaXml.write(objetosXML.getBytes());
		} catch (FileNotFoundException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}

		System.out.println("\nObjetos em XML:");
		System.out.println(objetosXML);
	}

	public Object leXML(String nomeArquivo) throws IOException,
			ClassNotFoundException {

		File arquivo = new File(nomeArquivo);
		Reader leitor = null;
		ObjectInputStream in = null;

		try {
			FileInputStream arquivoXML = new FileInputStream(arquivo);
			leitor = new InputStreamReader(arquivoXML);
			
			//ESTÁ DANDO O NPE NESSA LINHA ABAIXO.
			in = xstream.createObjectInputStream(leitor);

		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}

		return in.readObject();
	}
}

Abraço

2 Respostas

jgbt

cara,
sempre poste a exception ,facilita a vida de quem quer ajudar.
seguinte, nessa linha:

//ESTÁ DANDO O NPE NESSA LINHA ABAIXO.  
             in = xstream.createObjectInputStream(leitor);

parece que vc não inicializou a variavel xstream. dae vai dar nullPointer mesmo.
ta uma olhada nisso.

[]´s

crpablo

jgbt:
cara,
sempre poste a exception ,facilita a vida de quem quer ajudar.
seguinte, nessa linha:

//ESTÁ DANDO O NPE NESSA LINHA ABAIXO.  
             in = xstream.createObjectInputStream(leitor);

parece que vc não inicializou a variavel xstream. dae vai dar nullPointer mesmo.
ta uma olhada nisso.

[]´s

Fala João…

Não postei a exception pq é só NullPointerException mesmo…

Caraca brother… pior que nem lembrei disso…

Era isso mesmo, faltava inicializar a variável…

Valeu cara

Criado 18 de dezembro de 2007
Ultima resposta 18 de dez. de 2007
Respostas 2
Participantes 2