Lista com o XStream

Boa tarde galera do guj…

Eu começei a estudar o XStream, achei ele muito legal e tudo mais, eu so estou com um problema, eu queria uma lista de obejtos java apartir de um XML. eu fiz mais ou menos assim:

		XStream stream= new XStream();
	
		List list= (List) stream.fromXML("text.xml");
		Contato contato = (Contato) list.get(0);
		System.out.println(contato.getNome());

Codigo simples, porem quando eu rodo, ele me lança uma:

Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: -1
	at com.thoughtworks.xstream.core.util.FastStack.pop(FastStack.java:42)
	at com.thoughtworks.xstream.io.xml.AbstractPullReader.move(AbstractPullReader.java:125)
	at com.thoughtworks.xstream.io.xml.AbstractPullReader.moveDown(AbstractPullReader.java:103)
	at com.thoughtworks.xstream.io.xml.XppReader.<init>(XppReader.java:63)
	at com.thoughtworks.xstream.io.xml.AbstractXppDriver.createReader(AbstractXppDriver.java:58)
	at com.thoughtworks.xstream.XStream.fromXML(XStream.java:895)
	at com.thoughtworks.xstream.XStream.fromXML(XStream.java:886)
	at br.com.steno.agenda.mb.Testa.main(Testa.java:24)

Porque o Xstream ta fazendo isso: acessando o -1 da minha lista?

Se alguem souber o porque disso fico grato…

[]'s

Um tutorial sobre XStream: Manipulando Arquivo XML ? Parte III: XStream

Eu sei que provavelmente o autor do tópico já teve sua dúvida respondida, mas como eu cheguei aqui cometendo o mesmo erro e quero contribuir com os próximos.

List list= (List) stream.fromXML("text.xml");  

Você está passando como parâmetro o nome do arquivo, quando na verdade você deve passar um objeto File.

List list= (List) stream.fromXML(new File("text.xml"));  

Existem outras maneiras de referenciar um arquivo neste construtor, basta verificar na documentação java da biblioteca. Para mais informações:

http://xstream.codehaus.org/tutorial.html