Usando JDOM

2 respostas
matheusssilva

Seguinte gente, estou usando um arquivo xml para gravar o status de algumas JTables. Por enquanto meu arquivo xml está assim:

<JTables>

   <sortorder>

      <tabelaclientes>

         <coluna>colunaX</coluna>

         <ordem>UNSORTED</ordem>

      </tabelaclientes>

      <tabelaclientes>

         <coluna>colunaY</coluna>

         <ordem>ASCENDING</ordem>

      </tabelaclientes>

      <tabelaclientes>

         <coluna>colunaZ</coluna>

         <ordem>DESCENDING</ordem>

      </tabelaclientes>

    </sortorder>

</JTable>

Bom como vcs podem ver eu preciso passar por três elementos até chegar na linha que me interessa. Baseado no código XML acima como faço para por exemplo saber como está a ordenação de da coluna Y na tabela de clientes? Li alguns exemplos que encontrei mas nenhuma usava o código XML dessa forma. Não sei como fazer para passar pelos 3 elementos. nos exemplos que encontrei haviam apenas 2.

<ZzzZzZZ>
   
   <XxxXxxX>

      <coluna>colunaX</coluna>

Ou seja, nos exemplos que vi o código era bem mais simples no meu caso o código é bem diferente não to sacando como fazer a leitura usando o meu código XML.
O código tem que ser assim pois nesse mesmo arquivo eu irei armazenar tb outras informações da JTable, como por exemplo a posição das colunas. Ai depois das tags eu teria mais as tags .

Agradeço a ajuda dos senhores.

2 Respostas

matheusssilva

Afs! Ninguém aqui saca de JDOM ? :frowning:

matheusssilva

certo! certo! :roll: Ninguém responde, provavelmente estão achando q só porque eu não postei um código, eu estou querendo que resolvam pra mim. Não sou estudante querendo se livrar de um trabalho da facú, isso é uma implementação que estou desenvolvendo em um sistema.

Aff tubo bem, se é por falta de código.
Isso foi o máximo que eu consegui escrever através do meu raciocinio vago sobre JDOM.

import java.io.IOException;
import java.util.List;
import java.util.logging.Level;
import java.util.logging.Logger;
import org.jdom.Document;
import org.jdom.Element;
import org.jdom.JDOMException;
import org.jdom.input.SAXBuilder;

/**
 *
 * @author Matheus
 */

public class JTableXML {

    public static String buscar(){

        Document doc = null;
        SAXBuilder builder = new SAXBuilder();

        try {

            doc = builder.build("JTable.xml");

        } catch (JDOMException ex) {
            Logger.getLogger(JTableXML.class.getName()).log(Level.SEVERE, null, ex);
        } catch (IOException ex) {
            Logger.getLogger(JTableXML.class.getName()).log(Level.SEVERE, null, ex);
        }

        Element jtable = doc.getRootElement();
        List<Element> order = jtable.getChildren();
        //List<Element> tabela = 

        Element element = jtable.getChild("ordem");
        return element.getText();
    }
}

Dá null pointer. Abaixo o código XML

<JTables> <sortorder> <tabela> <nometabela>clientes</nometabela> <coluna> <nomecoluna>colunaX</nomecoluna> <ordem>UNSORTED</ordem> </coluna> <coluna> <nomecoluna>colunaY</nomecoluna> <ordem>ASCENDING</ordem> </coluna> <coluna> <nomecoluna>colunaZ</nomecoluna> <ordem>DESCENDING</ordem> </coluna> </tabela> </sortorder> </JTables>

Tenho que encontrar um geito de fazer o método retornar a ordem de uma coluna, por exemplo da colunaZ.

Ajuda pliz!

Criado 28 de setembro de 2009
Ultima resposta 29 de set. de 2009
Respostas 2
Participantes 1