Problema basico de leitura em XML

2 respostas
G

alguem consegue onde está o erro semântico no meu código de leitura por favor ?
estou usando X Stream

package xml;

import java.util.ArrayList;
import java.util.List;

import com.thoughtworks.xstream.XStream;

import java.io.File;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.PrintWriter;
import java.util.List;
import javax.swing.JOptionPane;


public class Main {

    public static void main(String[] args) {
        String ROBOXML, txt = " ";

        // Configurando XStream		
        XStream xstream = new XStream();
        //Criando Lista de Objetos qualquer
        List robos = new ArrayList(1);
        // Criando alguns dados
        Robo P1 = new Robo();
        P1.setNome("Robo 1");
        P1.settipo("RCX 2006");

        Robo P2 = new Robo();
        P2.setNome("Robo 2");
        P2.settipo("NTX 2008");



        Atividades moverP1 = new Atividades();
       
        moverP1.setMovimento("frente");

        Atividades moverP2 = new Atividades();
       
        moverP2.setMovimento("frente");

        P1.setAtividade(moverP1);

         P2.setAtividade(moverP2);

        robos.add(P1);
        robos.add(P2);

        // Passando os dados de Objetos Java para XML
        ROBOXML = xstream.toXML(robos);

        System.out.println("\nCRobos-XML:");
        System.out.println(ROBOXML);
        JOptionPane.showMessageDialog(null, "Objeto-Robo em XML\n" + ROBOXML);
        try {
            FileWriter xml = new FileWriter("Robo.XML");
            PrintWriter escreve = new PrintWriter(xml);
            escreve.print("<?xml version=\"1.0\"encoding=\"ISO-8859-1\"?>");
            escreve.print(ROBOXML);
            escreve.flush();
            escreve.close();
        } catch (Exception X) {
            System.out.print("Erro");
        }
        String AUX;

System.out.println("\n\n\nDivisor\n\n\n");
        List listaInst = null;


try{                                 
 FileReader arquivo = new FileReader(new File("E:\Iniciação Cientifica PDPD\Entrega\XML\Teste.XML"));  
 listaInst = (List) xstream.fromXML(arquivo); 
}catch(Exception a){}

       // Passando os dados de XML para Objetos Java
   
        Robo geral = (Robo) listaInst.get(0);                                 ESSA É A LINHA QUE MARCA ERRO
        Atividades Atividadegeral = geral.getAtividade();

        System.out.println("\n Objeto como Java:");
        System.out.println("Nome: " + geral.getNome());
        System.out.println(
                "atividade: " + Atividadegeral.getMovimento());
        JOptionPane.showMessageDialog(null, " Objeto como Java\nNome: " + geral.getNome() +
                "\nmovimento: " + Atividadegeral.getMovimento());

  
    }
}

por favor ajuda !!!

2 Respostas

wariows

Qual o problema afinal?

Em que parte do processo você tá esperando alguma coisa e tá vindo outra? O que tá vindo e o que você esperava?

[]'s

G

O problema é que ele não está lendo o XML direito, e na linha marcada era para ele transformar o XML, externo em um objeto, e ele não faz isso eu acho que ele acusa de não ter recebido direeito o XML que terá de ler.

realmente não sei o que esta de errado …

mas obrigado por responder

Criado 14 de outubro de 2008
Ultima resposta 14 de out. de 2008
Respostas 2
Participantes 2