Gerar classes Java a partir de documento XML sem schema

Alguém conhece algum aplicativo para gerar classes Java a partir de documentos XML sem schema?

Usando schema tem, por exemplo, JAXB. Agora, usando apenas o documento XML, sem schema, não achei nada realmente interessante.

Gostaria de algo assim…

Dado o cliente.xml abaixo:

<cliente>
  <id>1</id>
  <nome>Zézinho</nome>
  <telefone>
    <ddd>011</ddd>
    <numero>1236-7874</numero>
    <ramal/>
  </telefone>
</cliente>

Ele gera os Cliente.java e Telefone.java abaixo:

public class Cliente {
  private Long id;
  private String nome;
  private Telefone telefone;

  // getters e setters
}

public class Telefone {
    ...
}

Alguma sugestão? Ou vou ter que codar um mesmo? :roll:

Use algum programa que, a partir de um XML exemplo, gera um schema. Acho que o Altova (você pode pegar um demo em www.altova.com ) consegue fazer isso.

Fácil!

http://xstream.codehaus.org/

Qualquer dúvida é só postar.
Abraços

XStream++

Não é uma má idéia, mas acho que daria muito trabalho gerar os XSDs a partir dos XMLs e depois gerar as classes Java a partir dos XSDs. Se tivesse um programa que fizesse isso de uma só vez, me pouparia bastante tempo.

Meu caso não é de serialização de objetos, e sim, de geração de classes Java a partir de documentos XMLs que, a grosso modo, seriam como definições de como estas classes deveriam ser.

Eu não quero o conteúdo das tag; eu quero usar as tags como descrição de como as classes devem ser.

Aí depois, sim, quando for fazer marshal/unmarshal desses XMLs para objetos Java, com certeza, vou usar XStream. Aliás, é o que já estou usando há um bom tempo. :slight_smile:

–XStream; :lol:

tem um projeto que chama Smooks, que serve isso pra que vc ta procurando:

www.smooks.org

[quote=bobmoe]tem um projeto que chama Smooks, que serve isso pra que vc ta procurando:

www.smooks.org[/quote]

É exatamente isso, cara!

http://www.smooks.org/mediawiki/index.php?title=V1.2:xml-to-java

A única coisa é que, dando uma primeira olhada, me parece que vou ter que escrever um arquivo de configuração com algumas definições para orientar o Smooks na geração das classes – o que eu não gostaria de fazer, porque neste caso, talvez fosse mais fácil fazer o que o thingol sugeriu.

Valeu!

Tem um tal de XMLBeans também, mas eu sinceramente não curti muito.

XMLBeans é baseado em schemas, não é o meu caso.