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

Persistance des données Java Discussion :

JAXB sous Unix AIX


Sujet :

Persistance des données Java

  1. #1
    Candidat au Club
    Inscrit en
    Octobre 2009
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : Octobre 2009
    Messages : 3
    Points : 3
    Points
    3
    Par défaut JAXB sous Unix AIX
    Bonjour tous le monde,

    Je rencontre une exception de type java.lang.IncompatibleClassChangeError lorsque j’exécute mon script ANT qui permet de générer des fichiers XML en utilisant l'API JAXB (Marshalling/Unmarshilling) dans le serveur de déploiement (serveur AIX).

    • Lorsque j’exécute le script ANT dans l'environnement de développement (Windows XP), il marche bien et il génère les fichiers XML.

    • J'utilise dans l'environnement de développement la même JDK (jdk1.5.0) qui est installée dans le serveur de déploiement (serveur AIX)


    NB : La génération s'effecute bien par fois (raaaaaaaaarement) sur le serveur AIX.

    voici la trace :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
     
     
    ........................./build.xml:176: java.lang.IncompatibleClassChangeError
            at com.sun.xml.bind.v2.model.impl.ElementPropertyInfoImpl$1.size(ElementPropertyInfoImpl.java:82)
            at java.util.AbstractList$Itr.hasNext(AbstractList.java:431)
            at com.sun.xml.bind.v2.model.impl.ModelBuilder.getClassInfo(ModelBuilder.java:260)
            at com.sun.xml.bind.v2.model.impl.RuntimeModelBuilder.getClassInfo(RuntimeModelBuilder.java:104)
            at com.sun.xml.bind.v2.model.impl.RuntimeModelBuilder.getClassInfo(RuntimeModelBuilder.java:85)
            at com.sun.xml.bind.v2.model.impl.ModelBuilder.getClassInfo(ModelBuilder.java:214)
            at com.sun.xml.bind.v2.model.impl.RuntimeModelBuilder.getClassInfo(RuntimeModelBuilder.java:99)
            at com.sun.xml.bind.v2.model.impl.RuntimeModelBuilder.getClassInfo(RuntimeModelBuilder.java:85)
            at com.sun.xml.bind.v2.model.impl.ModelBuilder.getTypeInfo(ModelBuilder.java:320)
            at com.sun.xml.bind.v2.model.impl.RegistryInfoImpl.<init>(RegistryInfoImpl.java:103)
            at com.sun.xml.bind.v2.model.impl.ModelBuilder.addRegistry(ModelBuilder.java:362)
            at com.sun.xml.bind.v2.model.impl.ModelBuilder.getTypeInfo(ModelBuilder.java:332)
            at com.sun.xml.bind.v2.runtime.JAXBContextImpl.getTypeInfoSet(JAXBContextImpl.java:460)
            at com.sun.xml.bind.v2.runtime.JAXBContextImpl.<init>(JAXBContextImpl.java:298)
            at com.sun.xml.bind.v2.runtime.JAXBContextImpl.<init>(JAXBContextImpl.java:141)
            at com.sun.xml.bind.v2.runtime.JAXBContextImpl$JAXBContextBuilder.build(JAXBContextImpl.java:1163)
            at com.sun.xml.bind.v2.ContextFactory.createContext(ContextFactory.java:145)
            at com.sun.xml.bind.v2.ContextFactory.createContext(ContextFactory.java:236)
            at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
            at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:64)
            at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
            at java.lang.reflect.Method.invoke(Method.java:615)
            at javax.xml.bind.ContextFinder.newInstance(ContextFinder.java:186)
            at javax.xml.bind.ContextFinder.newInstance(ContextFinder.java:146)
            at javax.xml.bind.ContextFinder.find(ContextFinder.java:348)
            at javax.xml.bind.JAXBContext.newInstance(JAXBContext.java:446)
            at javax.xml.bind.JAXBContext.newInstance(JAXBContext.java:409)
            at javax.xml.bind.JAXBContext.newInstance(JAXBContext.java:313)
            at gen.utils.Util.unmarshalling(Unknown Source)
            at gen.utils.Util.mvtConfig(Unknown Source)
            at gen.utils.Util.mvtGenConfig(Unknown Source)
            at gen.start.StartGen.mvtGeneration(Unknown Source)
            at gen.start.StartGen.start(Unknown Source)
            at gen.start.StartGen.main(Unknown Source)
            at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
            at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:64)
            at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
            at java.lang.reflect.Method.invoke(Method.java:615)
            at org.apache.tools.ant.taskdefs.ExecuteJava.run(ExecuteJava.java:217)
            at org.apache.tools.ant.taskdefs.ExecuteJava.execute(ExecuteJava.java:152)
            at org.apache.tools.ant.taskdefs.Java.run(Java.java:771)
            at org.apache.tools.ant.taskdefs.Java.executeJava(Java.java:221)
            at org.apache.tools.ant.taskdefs.Java.executeJava(Java.java:135)
            at org.apache.tools.ant.taskdefs.Java.execute(Java.java:108)
            at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:291)
            at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
            at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:64)
            at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
            at java.lang.reflect.Method.invoke(Method.java:615)
            at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106)
            at org.apache.tools.ant.Task.perform(Task.java:348)
            at org.apache.tools.ant.Target.execute(Target.java:390)
            at org.apache.tools.ant.Target.performTasks(Target.java:411)
            at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1399)
            at org.apache.tools.ant.Project.executeTarget(Project.java:1368)
            at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41)
            at org.apache.tools.ant.Project.executeTargets(Project.java:1251)
            at org.apache.tools.ant.Main.runBuild(Main.java:809)
            at org.apache.tools.ant.Main.startAnt(Main.java:217)
            at org.apache.tools.ant.launch.Launcher.run(Launcher.java:280)
            at org.apache.tools.ant.launch.Launcher.main(Launcher.java:109)

    Aider moi SVP .

  2. #2
    Membre confirmé Avatar de NicoL__
    Homme Profil pro
    Architecte
    Inscrit en
    Janvier 2011
    Messages
    399
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Architecte

    Informations forums :
    Inscription : Janvier 2011
    Messages : 399
    Points : 577
    Points
    577
    Par défaut
    Bonjour,

    C'es la même JDK sous AIX que sous Windows XP ? Pas uniquement les versions, AIX c'est IBM et IBM a sa propre implémentation de la JDK.
    Il faut peut-être recompiler le tout avec la JDK d'IBM.

  3. #3
    Candidat au Club
    Inscrit en
    Octobre 2009
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : Octobre 2009
    Messages : 3
    Points : 3
    Points
    3
    Par défaut
    Merci, oui c'est vraiment la solution envisagée. Mais le problème c'est que l'environnement du DEV est sur Windows, et que je trouve pas un JDK1.5 d'IBM qui tourne sur windows ca existe que pour Linux.

    http://blogs.msdn.com/b/dotnetintero...r-windows.aspx

  4. #4
    Membre confirmé Avatar de NicoL__
    Homme Profil pro
    Architecte
    Inscrit en
    Janvier 2011
    Messages
    399
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Architecte

    Informations forums :
    Inscription : Janvier 2011
    Messages : 399
    Points : 577
    Points
    577
    Par défaut
    Effectivement IBM ne semble distribuer qu'un plugin eclipse pour Windows :
    http://www.ibm.com/developerworks/ja....html#download

    Une technique serait de savoir quelle classe pose problème, trouver son équivalent dans la JRE IBM et charger cette classe en fonction d'une configuration. Cela se fait bien en configurant le nom complet de la classe dans un fichier properties.
    Et une piste pour JAXB est qu'IBM a son implémentation :
    com.ibm.xml.xlxp2.jaxb.JAXBContextImpl

    Il faut probablement donc passer cela au context jaxb

Discussions similaires

  1. Réponses: 8
    Dernier message: 22/04/2013, 15h50
  2. Variables sous Unix AIX
    Par ApprentiOracle dans le forum AIX
    Réponses: 4
    Dernier message: 18/01/2010, 11h11
  3. Problème de compilation postgres 8.4.1 sous Unix AIX
    Par casasniper dans le forum Installation
    Réponses: 7
    Dernier message: 16/10/2009, 12h58
  4. Réponses: 2
    Dernier message: 06/08/2007, 13h54
  5. Chargement dynamique de DLL sous Unix
    Par Willou dans le forum Autres éditeurs
    Réponses: 7
    Dernier message: 18/12/2002, 18h25

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