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

Applets Java Discussion :

Bizarrerie avec un deployment ruleset impliquant Java 6 et Java 8


Sujet :

Applets Java

  1. #1
    Futur Membre du Club
    Inscrit en
    Janvier 2007
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Janvier 2007
    Messages : 8
    Points : 9
    Points
    9
    Par défaut Bizarrerie avec un deployment ruleset impliquant Java 6 et Java 8
    Bonjour à tous.
    Si je viens vous embetter aujourd'hui c'est qu'il m'arrive un truc bizarre, que je n'arrive pas à expliquer.

    Voilà la situation:
    J'ai besoin de faire tourner 2 applets differentes.
    Une vieille qui ne marche qu'avec Java 6, et une récente qui ne marche qu'avec Java 7 ou 8.

    J'ai donc installé Java 6, puis Java 8 afin d'avoir le deux.
    Ensuite j'ai créé, signé et déployé un Deployment Ruleset qui dit à Java de lancer l'une avec Java 6* et l'autre avec Java 7+

    Jusque là tout va bien et ca fonctionne.
    Lorsque je lance ma vieille applet java 6, j'ai Java 8 qui démarre, lit le ruleset, se rend compte qu'il faut etre en Java 6 et "redemarre" en java 6 (je vois la console Java 8 se fermer et une console Java 6 s'ouvrir)

    Sauf que... mon applet ne marche pas. (Bien sur, si je désinstalle la JRE8 et que je n'ai que la JRE6 elle marche parfaitement)

    Et dans ma console java, j'ai les logs suivants
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    Java Web Start 11.60.2.27
    Using JRE version 1.6.0_17-b04 Java HotSpot(TM) Client VM
    Donc c'est bien la preuve que mon ruleset à marché, et qu'il demarre mon applet en JRE6.

    La partie etrange arrive:

    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
    java.lang.UnsupportedClassVersionError: com/sun/javafx/runtime/VersionInfo : Unsupported major.minor version 52.0
                    at java.lang.ClassLoader.defineClass1(Native Method)
                    at java.lang.ClassLoader.defineClass(Unknown Source)
                    at java.security.SecureClassLoader.defineClass(Unknown Source)
                    at java.net.URLClassLoader.defineClass(Unknown Source)
                    at java.net.URLClassLoader.access$000(Unknown Source)
                    at java.net.URLClassLoader$1.run(Unknown Source)
                    at java.security.AccessController.doPrivileged(Native Method)
                    at java.net.URLClassLoader.findClass(Unknown Source)
                    at java.lang.ClassLoader.loadClass(Unknown Source)
                    at java.lang.ClassLoader.loadClass(Unknown Source)
                    at com.sun.deploy.config.JfxRuntime.runtimeForPath(Unknown Source)
                    at com.sun.deploy.config.JREInfo.<init>(Unknown Source)
                    at com.sun.deploy.config.JREInfo.setInstalledJREList(Unknown Source)
                    at com.sun.deploy.config.ClientConfig.storeInstalledJREs(Unknown Source)
                    at com.sun.javaws.Main.launchApp(Unknown Source)
                    at com.sun.javaws.Main.continueInSecureThread(Unknown Source)
                    at com.sun.javaws.Main.access$000(Unknown Source)
                    at com.sun.javaws.Main$1.run(Unknown Source)
                    at java.lang.Thread.run(Unknown Source)
    Si j'ai bien compris ce que cette exception signiffie, la classe VersionInfo de javafx ne peut etre lancée (en JRE6) pare qu'elle est compilée pour la JRE8 (version 52)

    Cela voudrait donc dire que quelque part, c'est le javafx de Java 8 qui est utilisé et non celui de Java 6.
    Par quelle diablerie cela est il possible ??

    J'ai également dans les logs de la console le message
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Missing Permissions manifest attribute in main jar
    Or ce message, ne concerne que la JRE 7 update 51 et au delà, puisque c'est à ce moment que l'attribut permission est devenu obligatoire dans les applets.

    Je n'ai aucun contrôle (ni le code source) de cette applet, puisque c'est un vieux produit utilisé par la boite.
    Comment puis-je faire en sorte que ce soit bien la JRE6 qui soit utilisée et pas un peu de JRE6 et un peu de JRE8 ?

    Malgré cette exception l'applet continue de se lancer, comme si de rien était, mais fini par planter au bout d'un moment avec comme erreur:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Need to specify class name in environment or system property, or as an applet parameter, or in an application resource file:  java.naming.factory.initial
    Je n'ai aucune explication sur ce qui peut provoquer cette erreur, à part ce mix JRE6/JR8 puisque lorsque je n'ai que la JRE6 installée tout marche bien sans aucune erreur.

  2. #2
    Expert éminent sénior
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Points : 48 804
    Points
    48 804
    Par défaut
    J'avoue ne jamais avoir tenté ce genre de bidouille et être surpris que java 6 accepte de démarrer vu que les java dépassés se bloquent par sécurité. Tu n'aurais pas des variables d'environnement définies par hasard? Est ce que démarrer ta vieille applet directement avec appletviewer ne serait pas une solution?

  3. #3
    Membre averti
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2014
    Messages
    352
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Octobre 2014
    Messages : 352
    Points : 349
    Points
    349

Discussions similaires

  1. Bizarrerie avec le ET logique (&)
    Par molotov dans le forum C
    Réponses: 16
    Dernier message: 19/03/2007, 00h13
  2. Problème avec hot deploy
    Par Jahz dans le forum Eclipse Java
    Réponses: 3
    Dernier message: 05/07/2006, 13h35
  3. Réponses: 4
    Dernier message: 13/02/2006, 21h58
  4. bizarrerie avec l'appel system read sous linux.
    Par Hypnocrate dans le forum C
    Réponses: 20
    Dernier message: 20/11/2005, 02h47
  5. bizarreries avec le port serie
    Par Invité dans le forum MFC
    Réponses: 3
    Dernier message: 20/10/2005, 17h35

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