IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Format d'échange (XML, JSON...) Java Discussion :

JAXB - Générer une classe java


Sujet :

Format d'échange (XML, JSON...) Java

  1. #1
    Débutant  
    Profil pro
    Inscrit en
    Juin 2013
    Messages
    1 225
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2013
    Messages : 1 225
    Points : 132
    Points
    132
    Par défaut JAXB - Générer une classe java
    Bonjour,

    J'ai des schéma xsd et dans des schémas xsd j'importe un autre schéma xsd. Or le problème c'est que cela me régénéré les classes du schéma xds que j'ai importé alors qu'elles ont déjà étaient générés dans un premier package.

    Comment faire pour que celle-ci ne soit pas de nouveau généré.

  2. #2
    Membre émérite Avatar de tsuji
    Inscrit en
    Octobre 2011
    Messages
    1 558
    Détails du profil
    Informations forums :
    Inscription : Octobre 2011
    Messages : 1 558
    Points : 2 736
    Points
    2 736
    Par défaut
    Oui, c'est un besoin légitime qu'on doit traiter et il y a de moyen de le faire.

    Supposons un schéma a.xsd qui importe b.xsd; et ce dernier quant à lui importe c.xsd. Tous les schémas se trouvent dans un sous-répertoire "schema". Supposons chacun d'eux est pris pour générer des classes de source .java à leur propre package, dit x.y.a, x.y.b et x.y.c respectivement sous le répertoire "src". Alors l'outil xjc s'est fait travailler dans un ordre d'un sens inverse de mécanisme d'import (ou d'inclus d'ailleurs) pour la raison évidente comme ça.
    Code text : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    xjc -p x.y.c -d src -extension -episode schema/c.episode schema/c.xsd
    xjc -p x.y.b -d src -extension -episode schema/b.episode -b schema/c.episode schema/b.xsd
    xjc -p x.y.a -d src -extension -b schema/c.episode -b schema/b.episode schema/a.xsd
    L'option "-episode schema/c.episode" veut dire "générer un fichier binding nommé c.episode dans le sous-répertoire schema". Le nom ici par exemple c.episode n'est qu'une façon de nommer. On peut le nommer librement, et le lieu d'y générer est aussi libre à choisir. Il est essentiellement un fichier binding qu'on est en principe capable de s'écrire soi-même si on veut.

    Tandis que l'option "-b schema/c.episode" veut dire simplement une customization qu'on fait souvent et normalement. Et cette fois, on utilise le fichier binding générer auparavant, les étapes précédantes.

    Le mécanisme est celà comme illustré. On s'adapte dans les façons diverses de le faire, dans ant, maven et tous ... Voilà !

Discussions similaires

  1. Générer des classes Java à partir d'une description XML ou JSON
    Par Bktero dans le forum Format d'échange (XML, JSON...)
    Réponses: 2
    Dernier message: 01/06/2015, 15h07
  2. Réponses: 6
    Dernier message: 17/07/2008, 09h22
  3. Générer une classe Java
    Par zsoh dans le forum Langage
    Réponses: 4
    Dernier message: 20/10/2007, 15h05
  4. Générer une classe java à partir d'une autre
    Par hebmaster dans le forum Général Java
    Réponses: 5
    Dernier message: 29/05/2006, 16h09
  5. Réponses: 13
    Dernier message: 25/03/2005, 11h00

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo