Je voudrais contrôler l'ordre des attributs dans les fichiers .java générés par le compilateur JAXB. Je suis conscient que l'ordre des attributs n'est pas important pour la validation xml. L'ordre est important pour la comparaison textuelle d'un fichier xml classifié dans un environnement de test de régression. L'ordre des attributs dans un fichier affecte directement l'ordre des attributs dans les balises xml.Ordre du compilateur et des attributs JAXB
Chaque fois que le compilateur JAXB est exécuté, les groupes d'attributs apparaissent dans un ordre différent, même sans modification du schéma. Il n'y a aucune option apparente disponible sur le compilateur pour empêcher ce comportement. Je souhaite éviter d'exécuter un script de post-compilation pour réordonner alphabétiquement les attributs dans les fichiers .java générés car cela interrompt les groupes d'attributs, mais je ne suis pas sûr qu'il existe une autre option.
Toutes les suggestions sont très appréciées.
Merci, Dave
La comparaison fait partie d'un grand test de régression conduit script bash et nous n'analyse pas actuellement l'une des réponses xml. Je pourrais utiliser un outil de comparaison XML mais je n'ai aucune expérience avec eux. Je travaille dans un environnement Solaris - pouvez-vous suggérer un outil de comparaison xml qui peut être appelé à partir de la ligne de commande à cet effet? Les fichiers à comparer peuvent également ne pas être validés par rapport au schéma car certaines différences connues sont remplacées par des valeurs constantes. – daveg
En outre, je pensais réorganiser les attributs dans le fichier. Java - pas la réponse XML. Je suppose que le marshaller utilise la réflexion parce que l'ordre dans le fichier .java semble contrôler directement l'ordre des attributs dans les réponses marshalled. – daveg
J'ai édité ma réponse pour répondre à vos deux points. –