Est-il possible d'utiliser le shemagen ant Task pour générer un schéma xsd à partir de fichiers de classe au lieu de source?Génération de schéma XML à partir de fichiers de classe JAXB dans Ant
3
A
Répondre
2
Vous pourriez probablement écrire quelque chose assez facilement, puis appeler Ant:
import java.io.File;
import java.io.IOException;
import javax.xml.bind.JAXBContext;
import javax.xml.bind.SchemaOutputResolver;
import javax.xml.transform.Result;
import javax.xml.transform.stream.StreamResult;
public class SchemaGenerator {
public static void main(String[] args) throws Exception {
String contextPath = args[0];
String outputDir = args[1];
JAXBContext jc = JAXBContext.newInstance(contextPath);
jc.generateSchema(new MySchemaOutputResolver(schemaFileName));
}
private static class MySchemaOutputResolver extends SchemaOutputResolver {
private String outputDir;
public MySchemaOutputResolver(String outputDir) {
this.outputDir = outputDir;
}
public Result createOutput(String namespaceURI, String suggestedFileName) throws IOException {
File file = new File(outputDir + "/" + suggestedFileName);
StreamResult result = new StreamResult(file);
result.setSystemId(file.toURI().toURL().toString());
return result;
}
}
}
Dans votre chemin de contexte vous auriez besoin d'un fichier jaxb.index avec une liste des classes à inclure dans votre JAXBContext. Ou vous pouvez passer les noms de classes à la classe SchemaGenerator et les charger via un ClassLoader.
Questions connexes
- 1. Génération de schéma SQL à partir de XML
- 2. Comment exécuter le compilateur JAXB à partir de ANT
- 3. Génération de schéma à partir de hsql
- 4. Génération de code JAXB XJC - La classe ObjectFactory est incomplète
- 5. Génération de classes Java à partir d'un fichier XML
- 6. Génération de fichiers XML complexes à partir d'asp.net mvc C#
- 7. Génération de XMl à partir de DataContext
- 8. Génération d'un document XML à partir d'un schéma XSD simple
- 9. Génération de classes java à partir de fichiers xsd
- 10. Arrayage de classe abstrait dans JAXB
- 11. Erreur lors de la génération d'une classe à partir du fichier de schéma XSD
- 12. Comment générer des fichiers de classe Objective C à partir d'un schéma XML?
- 13. Génération d'objets de valeur ActionScript à partir d'un schéma xsd
- 14. Problèmes de génération ant
- 15. lorsque unmarshaling à partir d'un schéma de l'ordre d'une séquence des questions dans JAXB
- 16. Génération de classes JAXB avec des noms de classes personnalisées
- 17. C# Génération automatique d'objets de classe à partir de XSD
- 18. Validation de schéma xml pour les fichiers de schéma volumineux
- 19. Classe de génération/exportation de fichiers Microsoft Excel PHP
- 20. Génération de classe .Net à partir de XSD avec union
- 21. Schéma de XML ouvert
- 22. Génération automatique de fichiers ant à partir d'un modèle en eclipse
- 23. Comment générer deux xml de structure différente à partir d'une classe en utilisant JAXB
- 24. Java JAXB Formulaire de génération de code XJC Problème de schéma XSD
- 25. OpenCms: Comment accéder au contenu de l'élément xml à partir de plusieurs fichiers de schéma
- 26. Génération de code JAXB XJC - "schemaLocation" manquant dans xml généré par Marshaller
- 27. JAXB - génération de classes à partir de XSD - conversion d'enums en chaînes
- 28. Génération de fichier XML à partir de WSDL
- 29. JAXB Ant erreur de tâche: xjc2 [ERREUR] null lieu inconnu
- 30. Comment personnaliser JAXB Marshalling si vous générez des beans JAXB à partir de XML