1. java
  2. android
  3. c#
  4. .net
  5. javascript
  6. php
  7. jquery
  8. html
  9. sql

Criar XML com a biblioteca Jdom

Olá pessoal, bom dia. Pessoal, estou tentando criar um documento "XML" com a seguinte estrutura abaixo, porém a maneira na qual estou tentando não está dando muito certo.

<?xml version="1.0" encoding="UTF-8"?>
<VCD name="diseases-name" type="Initial">
    <ParameterList>
        <Select>
            <Attribute class="Disease">name</Attribute>
            <Attribute class="Drug">name</Attribute>
        </Select>
    </ParameterList>
</VCD>

Para construir esse documento "XML", estou tentando fazê-lo da seguinte maneira abaixo.

private Element VCD = new Element("VCD");
private Element ParameterList = new Element("ParameterList");
private Element Select = new Element("Select");
private Element Attribute = new Element("Attribute");

String name = "diseases-name";
String type = "Initial";
String[] parameterListSelect = {"Disease:name", "Drug:name"};

public void createVcdXML() throws Exception {
    document = new Document();
    VCD.setAttribute(new Attribute(ATTRIBUTE_NAME, name)).setAttribute(new Attribute(ATTRIBUTE_TYPE, type));
    document.setRootElement(VCD);

    for (int i = 0; i < parameterListSelect.length; i++) {
        String[] string = parameterListSelect[i].split(":");
        Attribute.setAttribute(ATTRIBUTE_CLASS, string[0]).setText(string[1]);
    }
    document.getRootElement().addContent(ParameterList.addContent(Select.addContent(Attribute)));

    printDocument(document);
}

private void printDocument(Document document) throws Exception {
        new XMLOutputter(Format.getPrettyFormat()).output(document, System.out);
}

O resultado gerado a partir do código acima é o seguinte abaixo.

<?xml version="1.0" encoding="UTF-8"?>
<VCD name="diseases-name" type="Initial">
  <ParameterList>
    <Select>
      <Attribute class="Drug">name</Attribute>
    </Select>
  </ParameterList>
</VCD>

Como vocês podem notar, dentro do meu elemento "Select", tenho apenas um Attribute, enquanto deveria ter dois já que no meu "Array" (parameterListSelect) possou dois valores.

Alguém poderia me dá uma dica sobre o que alterar em meu código para que ele funcione de maneira correta. Desde já obrigado pela ajuda de todos.

  1. Você vai ver essas setas em qualquer página de pergunta. Com elas, você pode dizer se uma pergunta ou uma resposta foram relevantes ou não.
  2. Edite sua pergunta ou resposta caso queira alterar ou adicionar detalhes.
  3. Caso haja alguma dúvida sobre a pergunta, adicione um comentário. O espaço de respostas deve ser utilizado apenas para responder a pergunta.
  4. Se o autor da pergunta marcar uma resposta como solucionada, esta marca aparecerá.
  5. Clique aqui para mais detalhes sobre o funcionamento do GUJ!

1 resposta

Não é a resposta que estava procurando? Procure outras perguntas com as tags java xml ou faça a sua própria pergunta.