Cómo generar clases JAXB desde solo XML

Necesito generar clases de xml que no proporcione un esquema. Entiendo que esto es casi inútil, pero el hecho es que tenemos xml, está estructurado y deberíamos poder crear un modelo a partir del xml. En el pasado lo he hecho a mano, pero los documentos xml actuales con los que estoy trabajando son bastante grandes y es probable que mi tiempo lo pase mejor construyendo algo que haga lo que necesito. Pero, supongo que ya se ha hecho, y simplemente no puedo encontrarlo.

¿Alguna sugerencia?

Hay muchas herramientas disponibles (una búsqueda rápida en Google debería buscarle algunas) que pueden generar XSD a partir de XML asumiendo el tipo de cadena para casi todo. Debería poder usar ese XSD para ejecutar JAXB para obtener clases.

Aquí hay una herramienta en línea que te permite hacer eso.

Y aquí hay un límite de pantalla: enter image description here

Desde su archivo xml, puede crear un archivo de Definición de esquema XML (XSD). Una vez que tenga el XSD, podrá generar el código, ya sea para Java, C #, C ++ o todo lo anterior.

Si tiene Visual Studio, puede usar xsd.exe para generar el archivo XSD.

Referencias

XSD a Java: Referencia:

XSD a C ++: referencias:

XSD a C #: Referencia:

  • quickstart.developerfusion.co.uk/quickstart/howto/doc/xmlserialization/XSDToCls.aspx
  • Sintaxis del comando: “C: \ Archivos de progtwig \ Microsoft SDKs \ Windows \ v6.0A \ Bin \ x64 \ xsd.exe” -c -l: c # -n: SomeNameSpace example.xsd

Si el XML fue creado por JAXB, puede convertirse fácilmente en objetos. Hay un tutorial en oracle que ilustra una forma de hacerlo. Spring framework ofrece características similares utilizando JAXB que son muy convenientes.