tutorials.de Buch-Aktion 05/2012
ERLEDIGT
JA
ANTWORTEN
2
ZUGRIFFE
2761
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    Topsen Topsen ist offline Mitglied Silber
    Registriert seit
    Apr 2004
    Beiträge
    69
    Hallo zusammen,

    habe folgendes Problem. Habe eine Applikation, die mit JDK 1.5 gebaut wird (was auch so bleiben soll).
    Jetzt gibt es Anwender die mittlerweile JRE 1.6 verwenden und dabei gibt es folgende Exception:
    xception in thread "main" java.lang.NoSuchMethodError: javax.xml.bind.annotation.XmlAccessorType.value()Ljavax/xml/bind/annotation/AccessType;
    at com.sun.xml.bind.v2.model.impl.ClassInfoImpl.getAccessType(ClassInfoImpl.java:339)
    at com.sun.xml.bind.v2.model.impl.ClassInfoImpl.getProperties(ClassInfoImpl.java:228)
    at com.sun.xml.bind.v2.model.impl.RuntimeClassInfoImpl.getProperties(RuntimeClassInfoImpl.java:87)
    at com.sun.xml.bind.v2.model.impl.ModelBuilder.getClassInfo(ModelBuilder.java:127)
    at com.sun.xml.bind.v2.model.impl.RuntimeModelBuilder.getClassInfo(RuntimeModelBuilder.java:49)
    at com.sun.xml.bind.v2.model.impl.RuntimeModelBuilder.getClassInfo(RuntimeModelBuilder.java:41)
    at com.sun.xml.bind.v2.model.impl.ModelBuilder.getTypeInfo(ModelBuilder.java:189)
    at com.sun.xml.bind.v2.model.impl.RegistryInfoImpl.<init>(RegistryInfoImpl.java:51)
    ....
    Das Problem ist eine Änderung der Namensgebung: AccessType --> XMLAccessType

    Die dafür verwendeten jars liegen beim jre1.6 mit im Bauch. Beim erzeugen der Applikation werden alte JAXB jars angezogen.

    Kann ich beim JRE 1.6 wie beim bauen einen compliancelevel angeben 1.5 ? Oder kann ich die jars explicit angeben austauschen?

    Gruß und DAnke,

    Topsen
     

  2. #2
    Topsen Topsen ist offline Mitglied Silber
    Registriert seit
    Apr 2004
    Beiträge
    69
    Ich habe jetzt einfach die neue Version von JAXB in mein Projekt eingebaut und mit J 5 compiliert. Damit scheint es jetzt sowohl unter JRE 6 als auch JRE 5 zu laufen.
     

  3. #3
    Anime-Otaku Anime-Otaku ist offline Mitglied Brillant
    Registriert seit
    Aug 2005
    Ort
    Karlsruhe (Baden-Württemberg)
    Beiträge
    905
    Das kommt daher, dass Java 6, sein eigenes Jaxb enthält. Wenn du daher eine spezifische Version hast, musst du diese ggf. ins endorsed Verzeichnis legen.
    Dadurch werden die Jars im endorsed vorgezogen.

    Natürlich ist es jedoch sinnvoller die aktuelle jaxb Version zu verwenden. (nicht vergessen ab Java 6 Update 4, wurde auf 2.1 umgestellt)
     
    Wäre super wenn ihr euren Code in dieser Form einfügt:
    Code java:
    1
    
    System.out.println("Hello World");
    [java]System.out.println("Hello World");[/java]
    Für erledigte Threads dürft ihr den "erledigt"-Button anklicken!
    Über Dank freut sich jeder, der euch geholfen hat - ein Klick auf "Danke" kostet ja nicht mal was
    Blog: http://javaeffective.wordpress.com/

Ähnliche Themen

  1. JAXB und Java Maps/LIsts
    Von Tom_O im Forum Java
    Antworten: 3
    Letzter Beitrag: 15.04.10, 21:34
  2. JAXB und Java Type Mapping
    Von saftmeister im Forum Java
    Antworten: 3
    Letzter Beitrag: 26.02.10, 20:55
  3. Antworten: 22
    Letzter Beitrag: 21.08.08, 10:56
  4. Eclipse [compiler compliance level]
    Von Klein0r im Forum Java
    Antworten: 1
    Letzter Beitrag: 21.02.08, 15:24
  5. Level UP Videopodcast von und über Java / Games
    Von Thomas Darimont im Forum Java Technology News
    Antworten: 1
    Letzter Beitrag: 25.02.07, 16:28