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 :

Problème d'applet cache entry et autre


Sujet :

Applets Java

  1. #1
    Membre habitué Avatar de lostsoul
    Homme Profil pro
    Rédacteur web, blogueur, développeur web junior
    Inscrit en
    Novembre 2003
    Messages
    759
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Cher (Centre)

    Informations professionnelles :
    Activité : Rédacteur web, blogueur, développeur web junior
    Secteur : Conseil

    Informations forums :
    Inscription : Novembre 2003
    Messages : 759
    Points : 184
    Points
    184
    Par défaut Problème d'applet cache entry et autre
    Bonjour,

    J'ai un soucis avec mon applet, qui fonctionne bien depuis Netbeans et l'applet viewer.

    Sur un hébergeur, j'ai des erreurs que je ne comprends pas.
    cahce entry d'abord, puis des soucis de permission sur des fichiers alors que sous Netbeans, j'ai supprimé les dossiers les contenants et que tout fonctionne...

    L'applet est auto signée.

    Voici l'adresse : http://lostsouldark.free.fr/applet/index2.html

    Et le message d'erreur :

    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
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
     
    CacheEntry[http://lostsouldark.free.fr/applet/ProfTuxBot.jar]: updateAvailable=true,lastModified=Mon Nov 25 03:37:18 CET 2013,length=29799
    Missing Application-Name: manifest attribute for: http://lostsouldark.free.fr/applet/ProfTuxBot.jar
    Missing Permissions manifest attribute for: http://lostsouldark.free.fr/applet/ProfTuxBot.jar
    Missing Codebase manifest attribute for: http://lostsouldark.free.fr/applet/ProfTuxBot.jar
    Missing Application-Name: manifest attribute for: http://lostsouldark.free.fr/applet/ProfTuxBot.jar
    Missing Permissions manifest attribute for: http://lostsouldark.free.fr/applet/ProfTuxBot.jar
    Missing Codebase manifest attribute for: http://lostsouldark.free.fr/applet/ProfTuxBot.jar
    Missing Application-Name: manifest attribute for: http://lostsouldark.free.fr/applet/ProfTuxBot.jar
    Missing Permissions manifest attribute for: http://lostsouldark.free.fr/applet/ProfTuxBot.jar
    Missing Codebase manifest attribute for: http://lostsouldark.free.fr/applet/ProfTuxBot.jar
    0
    Name = proftux Path = ../ProfTuxBot/bots/proftux
    c:/ab
    ../ProfTuxBot/bots
    ../ProfTuxBot/bots/proftux
    ../ProfTuxBot/bots/proftux/aiml
    ../ProfTuxBot/bots/proftux/aimlif
    ../ProfTuxBot/bots/proftux/config
    ../ProfTuxBot/bots/proftux/logs
    ../ProfTuxBot/bots/proftux/sets
    ../ProfTuxBot/bots/proftux/maps
    Error: access denied ("java.io.FilePermission" "../ProfTuxBot/bots/proftux/config/normal.txt" "read")
    Error: access denied ("java.io.FilePermission" "../ProfTuxBot/bots/proftux/config/denormal.txt" "read")
    Error: access denied ("java.io.FilePermission" "../ProfTuxBot/bots/proftux/config/person.txt" "read")
    Error: access denied ("java.io.FilePermission" "../ProfTuxBot/bots/proftux/config/person2.txt" "read")
    Error: access denied ("java.io.FilePermission" "../ProfTuxBot/bots/proftux/config/gender.txt" "read")
    Preprocessor: 0 norms 0 persons 0 person2 
    Get Properties: ../ProfTuxBot/bots/proftux/config/properties.txt
    Error: access denied ("java.io.FilePermission" "../ProfTuxBot/bots/proftux/config/properties.txt" "read")
    java.security.AccessControlException: access denied ("java.io.FilePermission" "../ProfTuxBot/bots/proftux/sets" "read")
    	at java.security.AccessControlContext.checkPermission(Unknown Source)
    	at java.security.AccessController.checkPermission(Unknown Source)
    	at java.lang.SecurityManager.checkPermission(Unknown Source)
    	at sun.plugin2.applet.AWTAppletSecurityManager.checkPermission(Unknown Source)
    	at java.lang.SecurityManager.checkRead(Unknown Source)
    	at java.io.File.exists(Unknown Source)
    	at org.alicebot.ab.Bot.addAIMLSets(Bot.java:693)
    	at org.alicebot.ab.Bot.<init>(Bot.java:114)
    	at org.alicebot.ab.Bot.<init>(Bot.java:91)
    	at bot.BotApplet.<init>(BotApplet.java:85)
    	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    	at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
    	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
    	at java.lang.reflect.Constructor.newInstance(Unknown Source)
    	at java.lang.Class.newInstance(Unknown Source)
    	at com.sun.deploy.uitoolkit.impl.awt.AWTAppletAdapter$1.run(Unknown Source)
    	at java.awt.event.InvocationEvent.dispatch(Unknown Source)
    	at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
    	at java.awt.EventQueue.access$200(Unknown Source)
    	at java.awt.EventQueue$3.run(Unknown Source)
    	at java.awt.EventQueue$3.run(Unknown Source)
    	at java.security.AccessController.doPrivileged(Native Method)
    	at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
    	at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
    	at java.awt.EventQueue$4.run(Unknown Source)
    	at java.awt.EventQueue$4.run(Unknown Source)
    	at java.security.AccessController.doPrivileged(Native Method)
    	at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
    	at java.awt.EventQueue.dispatchEvent(Unknown Source)
    	at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
    	at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
    	at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
    	at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
    	at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
    	at java.awt.EventDispatchThread.run(Unknown Source)
    java.security.AccessControlException: access denied ("java.io.FilePermission" "../ProfTuxBot/bots/proftux/maps" "read")
    	at java.security.AccessControlContext.checkPermission(Unknown Source)
    	at java.security.AccessController.checkPermission(Unknown Source)
    	at java.lang.SecurityManager.checkPermission(Unknown Source)
    	at sun.plugin2.applet.AWTAppletSecurityManager.checkPermission(Unknown Source)
    	at java.lang.SecurityManager.checkRead(Unknown Source)
    	at java.io.File.exists(Unknown Source)
    	at org.alicebot.ab.Bot.addAIMLMaps(Bot.java:726)
    	at org.alicebot.ab.Bot.<init>(Bot.java:115)
    	at org.alicebot.ab.Bot.<init>(Bot.java:91)
    	at bot.BotApplet.<init>(BotApplet.java:85)
    	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    	at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
    	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
    	at java.lang.reflect.Constructor.newInstance(Unknown Source)
    	at java.lang.Class.newInstance(Unknown Source)
    	at com.sun.deploy.uitoolkit.impl.awt.AWTAppletAdapter$1.run(Unknown Source)
    	at java.awt.event.InvocationEvent.dispatch(Unknown Source)
    	at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
    	at java.awt.EventQueue.access$200(Unknown Source)
    	at java.awt.EventQueue$3.run(Unknown Source)
    	at java.awt.EventQueue$3.run(Unknown Source)
    	at java.security.AccessController.doPrivileged(Native Method)
    	at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
    	at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
    	at java.awt.EventQueue$4.run(Unknown Source)
    	at java.awt.EventQueue$4.run(Unknown Source)
    	at java.security.AccessController.doPrivileged(Native Method)
    	at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
    	at java.awt.EventQueue.dispatchEvent(Unknown Source)
    	at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
    	at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
    	at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
    	at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
    	at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
    	at java.awt.EventDispatchThread.run(Unknown Source)
    Voila, si vous voyez d'ou vient le soucis,
    Merci d'avance,
    Très cordialement,

    ANDRE Ani
    ANDRE Ani
    GNU/Linux et Informatique Libre
    https://andre-ani.fr

  2. #2
    Membre habitué Avatar de lostsoul
    Homme Profil pro
    Rédacteur web, blogueur, développeur web junior
    Inscrit en
    Novembre 2003
    Messages
    759
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Cher (Centre)

    Informations professionnelles :
    Activité : Rédacteur web, blogueur, développeur web junior
    Secteur : Conseil

    Informations forums :
    Inscription : Novembre 2003
    Messages : 759
    Points : 184
    Points
    184
    Par défaut
    J'ai fais des modifs et maintenant, je n'ai plus de message d'erreur dans la console, mais ça ne fonctionne toujours pas...

    Si quelqu'un peut m'éclairer svp ?

    Merci d'avance,
    Très cordialement,

    ANDRE Ani
    ANDRE Ani
    GNU/Linux et Informatique Libre
    https://andre-ani.fr

  3. #3
    Membre habitué Avatar de lostsoul
    Homme Profil pro
    Rédacteur web, blogueur, développeur web junior
    Inscrit en
    Novembre 2003
    Messages
    759
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Cher (Centre)

    Informations professionnelles :
    Activité : Rédacteur web, blogueur, développeur web junior
    Secteur : Conseil

    Informations forums :
    Inscription : Novembre 2003
    Messages : 759
    Points : 184
    Points
    184
    Par défaut
    Un petit coup de main SVP ?

    Je n'ai plus de message d'erreur semble-t-il, mais l'applet ne s'affiche toujours pas, et je ne sais pas du tout pourquoi...
    ANDRE Ani
    GNU/Linux et Informatique Libre
    https://andre-ani.fr

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

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

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 481
    Points : 48 806
    Points
    48 806
    Par défaut
    C'est marrant parce que moi quand je vais à l'adresse indiquée j'ai

    une popup avec le message d'erreur
    une icone d'erreur qui, si je clique, me réaffiche la même popup
    le message suivant dans la popup:
    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
    java.lang.RuntimeException: java.lang.NoClassDefFoundError: org/jdesktop/layout/GroupLayout$Group
    	at com.sun.deploy.uitoolkit.impl.awt.AWTAppletAdapter.instantiateApplet(Unknown Source)
    	at sun.plugin2.applet.Plugin2Manager.initAppletAdapter(Unknown Source)
    	at sun.plugin2.applet.Plugin2Manager$AppletExecutionRunnable.run(Unknown Source)
    	at java.lang.Thread.run(Unknown Source)
    Caused by: java.lang.NoClassDefFoundError: org/jdesktop/layout/GroupLayout$Group
    	at java.lang.Class.getDeclaredConstructors0(Native Method)
    	at java.lang.Class.privateGetDeclaredConstructors(Unknown Source)
    	at java.lang.Class.getConstructor0(Unknown Source)
    	at java.lang.Class.newInstance(Unknown Source)
    	at com.sun.deploy.uitoolkit.impl.awt.AWTAppletAdapter$1.run(Unknown Source)
    	at java.awt.event.InvocationEvent.dispatch(Unknown Source)
    	at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
    	at java.awt.EventQueue.access$200(Unknown Source)
    	at java.awt.EventQueue$3.run(Unknown Source)
    	at java.awt.EventQueue$3.run(Unknown Source)
    	at java.security.AccessController.doPrivileged(Native Method)
    	at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
    	at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
    	at java.awt.EventQueue$4.run(Unknown Source)
    	at java.awt.EventQueue$4.run(Unknown Source)
    	at java.security.AccessController.doPrivileged(Native Method)
    	at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
    	at java.awt.EventQueue.dispatchEvent(Unknown Source)
    	at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
    	at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
    	at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
    	at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
    	at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
    	at java.awt.EventDispatchThread.run(Unknown Source)
    Caused by: java.lang.ClassNotFoundException: org.jdesktop.layout.GroupLayout$Group
    	at sun.plugin2.applet.Applet2ClassLoader.findClass(Unknown Source)
    	at sun.plugin2.applet.Plugin2ClassLoader.loadClass0(Unknown Source)
    	at sun.plugin2.applet.Plugin2ClassLoader.loadClass(Unknown Source)
    	at sun.plugin2.applet.Plugin2ClassLoader.loadClass(Unknown Source)
    	at java.lang.ClassLoader.loadClass(Unknown Source)
    	... 24 more

  5. #5
    Membre habitué Avatar de lostsoul
    Homme Profil pro
    Rédacteur web, blogueur, développeur web junior
    Inscrit en
    Novembre 2003
    Messages
    759
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Cher (Centre)

    Informations professionnelles :
    Activité : Rédacteur web, blogueur, développeur web junior
    Secteur : Conseil

    Informations forums :
    Inscription : Novembre 2003
    Messages : 759
    Points : 184
    Points
    184
    Par défaut
    Moi je n'ai pas de message, et quand je clic sur l'icone d'erreur, j'ai la console mais simplement avec les options (sous Gnu Linux et Firefox).

    J'ai essayé de lancer l'applet avec le fichier de Netbeans (même s'il me semble que APPLET est deprecated :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <APPLET codebase="classes" code="bot/BotApplet.class" width=350 height=200></APPLET>
    Ou comme cela :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    <object codetype="application/x-java-applet" classid="java:bot.BotApplet.class" archive="classes/bot/ProfTuxBot.jar" width="350" height="200">
    	    <embed type="application/x-java-applet;version=1.7"
    	      width="350" height="200" archive="classes/bot/ProfTuxBot.jar" code="bot.BotApplet" codebase="classes" />
    	    </embed>
    	    Une applet Java
    	</object>
    Dans le dossier applet, j'ai ma page html, et un dossier (bot) avec ma classe et le jar, et un sous dossier avec les lib.

    Je dois surement faire une erreur dans la syntaxe du fichier html non ?
    ANDRE Ani
    GNU/Linux et Informatique Libre
    https://andre-ani.fr

  6. #6
    Membre habitué Avatar de lostsoul
    Homme Profil pro
    Rédacteur web, blogueur, développeur web junior
    Inscrit en
    Novembre 2003
    Messages
    759
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Cher (Centre)

    Informations professionnelles :
    Activité : Rédacteur web, blogueur, développeur web junior
    Secteur : Conseil

    Informations forums :
    Inscription : Novembre 2003
    Messages : 759
    Points : 184
    Points
    184
    Par défaut
    Désolé de continuer à vous casser les pieds, mais ça fait des heures que je suis dessus et je n'y arrive toujours pas...

    Sous Chrome, j'ai un message d'erreur si je fais un clic droit sur l'icone d'erreur : ClassNotFoundException : BotApplet.class

    J'ai trouvé sur un site Java ( http://download.java.net/jdk8/docs/t...ags.html#mixed ) un code pour insérer une applet quelque soit le navigateur :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    <object classid="/classes/bot/BotApplet"
            param name="codebase" value="classes"
    	param name="code" value="BotApplet.class"
    	param name="archive" value="BotApplet.jar"/>
         <comment>
          <embed code="BotApplet.class"
            type="application/x-java-applet;version=1.7">
            <noembed>
              Problème
            </noembed>
          </embed>
        </comment>
      </object>
    Je suppose que je fais une erreur dans le chemin de la classe ou du jar, mais je ne vois pas quoi...

    Encore désolé, je ne suis pas doué, et ça fait des heures que je suis la dessus.
    ANDRE Ani
    GNU/Linux et Informatique Libre
    https://andre-ani.fr

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

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

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 481
    Points : 48 806
    Points
    48 806
    Par défaut
    le classid ça doit être

    clsid:8AD9C840-044E-11D1-B3E9-00805F499D93


    c'est ce qui identifie le plugin java!

    Tu met un code base et tu met un archive. C'est soit l'un soit l'autre. Ton applet est dans un jar (archive) ou explosé dans un dossier sous forme de .class (codebase)

    Le embed devrait aussi préciser le archive ou le codebase, sinon je ne vois pas où le navigateur qui utiliserais embed ira trouver ton applet.


    A mon avis, ton navigateur tombe sur le object, ne comprends pas ton classid, fait un fallback vers le embed, et ne trouve pas ton archive puisque ce n'est pas indiqué et finis en ClassNotFound.


    Tu trouvera un autre exemple ici:
    http://bruce-eckel.developpez.com/li...age_15#LXV-A-4

  8. #8
    Membre habitué Avatar de lostsoul
    Homme Profil pro
    Rédacteur web, blogueur, développeur web junior
    Inscrit en
    Novembre 2003
    Messages
    759
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Cher (Centre)

    Informations professionnelles :
    Activité : Rédacteur web, blogueur, développeur web junior
    Secteur : Conseil

    Informations forums :
    Inscription : Novembre 2003
    Messages : 759
    Points : 184
    Points
    184
    Par défaut
    Merci, je me sert de l'exemple que tu m'as envoyé, qui n'est pas pareil que celui que j'avais trouvé.

    J'ai modifié le clsid pour qu'il corresponde à java 1.7.0, et j'utilise le codebase avec ma class et plus d'archive.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    <OBJECT classid="clsid:CAFEEFAC-0017-0000-FFFF-ABCDEFFEDCBA" width="250" height="200">
    <PARAM NAME="code" VALUE="BotApplet.class">
    <PARAM NAME="codebase" VALUE=".">
    <PARAM NAME="type" VALUE="application/x-java-applet;version=1.7.0">
    <COMMENT>
    <EMBED type="application/x-java-applet;version=1.7.0" width="250" height="200" 
      code="BotApplet.class" codebase=".">
    <NOEMBED>
    </COMMENT>
    No Java 2 support for APPLET
    </NOEMBED>
    </EMBED>
    </OBJECT>
    Mais, que je mette le class dans le même dossier que la page HTML ou dans le sous dossier classes/bot (avec les lib également), il ne trouve jamais ma class...

    J'ai mon dossier racine qui est applet. Dedans j'ai ma page HTML, et un sous dossier classes. Encore dedans, j'ai un dossier bot qui contient ma class et le dossier avec les lib.
    code doit bien correspondre au chemin vers la class, et codebase indiquer la racine non ?

    Je ne comprends pas pourquoi il ne trouve toujours pas ma classe.
    ANDRE Ani
    GNU/Linux et Informatique Libre
    https://andre-ani.fr

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

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

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 481
    Points : 48 806
    Points
    48 806
    Par défaut
    Citation Envoyé par lostsoul Voir le message
    Je ne comprends pas pourquoi il ne trouve toujours pas ma classe.
    Le codebase doit pointer vers la racine, le code doit contenir la forme package/TaClasse (le .class est optionnel de mémoire). Tes lib/ doivent être aussi mentionnées, parce que là, elle n'apparaissent nulle part. Typiquement, dans archive/. Je suppose que quand tu met "correctement" ton applet, ce qu'il ne trouve pas, ce sont les classes des librairies puisque tu les as oubliées....
    Attention aussi que le codebase + code doivent pour bien faire être cohérent avec la directive package de ton Applet. Si ton applet est Machin avec un package xxx.yyy, tu dois avoir code qui pointe sur truc/bidule, avoir dans code xxx.yyyy.Machin et au final avoir sur le serveur un fichier truc/bidule/xxx/yyy/Machin.class

  10. #10
    Membre habitué Avatar de lostsoul
    Homme Profil pro
    Rédacteur web, blogueur, développeur web junior
    Inscrit en
    Novembre 2003
    Messages
    759
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Cher (Centre)

    Informations professionnelles :
    Activité : Rédacteur web, blogueur, développeur web junior
    Secteur : Conseil

    Informations forums :
    Inscription : Novembre 2003
    Messages : 759
    Points : 184
    Points
    184
    Par défaut
    Alors, j'essaye de résumer pour comprendre un peu tout ça.
    Mon package, c'est bot, ma classe BotApplet.class

    Voila mon arborescence :



    Donc, si la racine de mon site est /applet, que la classe est dans un sous dossier classes, et les lib dans un sous dossier lib, je devrais avoir cela :

    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
     
    <OBJECT classid="clsid:CAFEEFAC-0017-0000-FFFF-ABCDEFFEDCBA" width="250" height="200">
    <PARAM NAME="code" VALUE="classes/bot/BotApplet.class">
    <PARAM NAME="codebase" VALUE="applet">
    <PARAM NAME="type" VALUE="application/x-java-applet;version=1.7.0">
    <PARAM NAME="archive" VALUE="classes/bot/lib/Ab.jar">
    <PARAM NAME="archive" VALUE="classes/bot/lib/swing-layout-1.0.4.jar">
    <COMMENT>
    <EMBED type="application/x-java-applet;version=1.7.0" width="250" height="200" 
      code="classes/bot/BotApplet.class" codebase="applet" archive="classes/bot/lib/Ab.jar" archive="classes/bot/lib/swing-layout-1.0.4.jar">
    <NOEMBED>
    </COMMENT>
    No Java 2 support for APPLET
    </NOEMBED>
    </EMBED>
    </OBJECT>
    Que je mette ou non .class, ça ne change rien.
    Et si je mets bot.BotApplet, pour correspondre au package, ça ne marche pas non plus.
    ANDRE Ani
    GNU/Linux et Informatique Libre
    https://andre-ani.fr

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

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

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 481
    Points : 48 806
    Points
    48 806
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    archive="classes/bot/lib/Ab.jar" archive="classes/bot/lib/swing-layout-1.0.4.jar"
    ce devrait être

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    archive="classes/bot/lib/Ab.jar:classes/bot/lib/swing-layout-1.0.4.jar"
    de même

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    <PARAM NAME="archive" VALUE="classes/bot/lib/Ab.jar">
    <PARAM NAME="archive" VALUE="classes/bot/lib/swing-layout-1.0.4.jar">
    devrait être

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <PARAM NAME="archive" VALUE="classes/bot/lib/Ab.jar:classes/bot/lib/swing-layout-1.0.4.jar">

    Ensuite, si ça ne marche toujours pas -> Donne nous le message d'erreur et ton tag corrigé.

  12. #12
    Membre habitué Avatar de lostsoul
    Homme Profil pro
    Rédacteur web, blogueur, développeur web junior
    Inscrit en
    Novembre 2003
    Messages
    759
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Cher (Centre)

    Informations professionnelles :
    Activité : Rédacteur web, blogueur, développeur web junior
    Secteur : Conseil

    Informations forums :
    Inscription : Novembre 2003
    Messages : 759
    Points : 184
    Points
    184
    Par défaut
    Toujours pas...

    Le message d'erreur :
    ClassNotFoundException

    class.bot.BotApplet.class

    (avec ou sans le .class).


    Voici le code :

    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
     
    <OBJECT classid="clsid:CAFEEFAC-0017-0000-FFFF-ABCDEFFEDCBA" width="250" height="200">
    <PARAM NAME="code" VALUE="classes/bot/BotApplet.class">
    <PARAM NAME="codebase" VALUE="applet">
    <PARAM NAME="type" VALUE="application/x-java-applet;version=1.7.0">
    <PARAM NAME="archive" VALUE="classes/bot/lib/Ab.jar:classes/bot/lib/swing-layout-1.0.4.jar">
    <COMMENT>
    <EMBED type="application/x-java-applet;version=1.7.0" width="250" height="200" 
      code="classes/bot/BotApplet.class" codebase="applet" archive="classes/bot/lib/Ab.jar:classes/bot/lib/swing-layout-1.0.4.jar">
    <NOEMBED>
    </COMMENT>
    No Java 2 support for APPLET
    </NOEMBED>
    </EMBED>
    </OBJECT>
    ANDRE Ani
    GNU/Linux et Informatique Libre
    https://andre-ani.fr

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

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

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 481
    Points : 48 806
    Points
    48 806
    Par défaut
    Ha oui, je n'avais pas remarqué

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    <PARAM NAME="code" VALUE="bot.BotApplet">
    <PARAM NAME="codebase" VALUE="classes/">
    Pareil dans le embed

    Faut que le nom dans code corresponde à la définition de la classe

    Note que le répertoire applet/ ne doit être mentionné nulle part puisque, si j'ai bien compris, le fichier html s'y trouve déjà.

  14. #14
    Membre habitué Avatar de lostsoul
    Homme Profil pro
    Rédacteur web, blogueur, développeur web junior
    Inscrit en
    Novembre 2003
    Messages
    759
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Cher (Centre)

    Informations professionnelles :
    Activité : Rédacteur web, blogueur, développeur web junior
    Secteur : Conseil

    Informations forums :
    Inscription : Novembre 2003
    Messages : 759
    Points : 184
    Points
    184
    Par défaut
    J'ai un nouveau message d'erreur..........

    RuntimeException
    java.lang.NoClassDefFoundError :
    org/jdesktop/layout/GroupLayout$Group

    Alors, près de 2 heures de recherches, j'ai essayé d'ajouter le chemin de la lib dans le build.xml, de modifier dans Netbeans le Layout Generation Style (standard java 6 ou swing), d'ajouter org-jdesktop-layout.jar, mais rien n'y fait...
    ANDRE Ani
    GNU/Linux et Informatique Libre
    https://andre-ani.fr

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

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

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 481
    Points : 48 806
    Points
    48 806
    Par défaut
    Citation Envoyé par lostsoul Voir le message
    d'ajouter org-jdesktop-layout.jar, mais rien n'y fait...
    Tu peux nous montrer ton essais pour ajouter le layout de jdesktop? Parce que, pour les dépendances, en gros c'est simple. Toutes les librairies dont dépendent ton projet doivent se retrouver dans le archive="....."

  16. #16
    Membre habitué Avatar de lostsoul
    Homme Profil pro
    Rédacteur web, blogueur, développeur web junior
    Inscrit en
    Novembre 2003
    Messages
    759
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Cher (Centre)

    Informations professionnelles :
    Activité : Rédacteur web, blogueur, développeur web junior
    Secteur : Conseil

    Informations forums :
    Inscription : Novembre 2003
    Messages : 759
    Points : 184
    Points
    184
    Par défaut
    J'ai vu ça sur un site, et c'était sencé résoudre le pbm. On récupère le jar org-jdesktop-layout.jar dans le répertoire d'install de Netbeans, et on l'ajoute dans le répertoire des libs, puis dans "archive=...".

    Mais je ne vois pas pourquoi il me le demande car il n'apparait pas dans les imports du projet.

    Mon interface dans Netbeans est bien créée avec le swing layout extension library. J'ai essayé avec Java 6 standard mais j'ai le même soucis...

    Voici le code d'appel de l'applet :

    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
     
    <OBJECT classid="clsid:CAFEEFAC-0017-0000-FFFF-ABCDEFFEDCBA" width="250" height="200">
    <PARAM NAME="code" VALUE="bot.BotApplet">
    <PARAM NAME="codebase" VALUE="classes/">
    <PARAM NAME="type" VALUE="application/x-java-applet;version=1.7.0">
    <PARAM NAME="archive" VALUE="classes/bot/lib/Ab.jar:classes/bot/lib/swing-layout-1.0.4.jar:classes/bot/lib/appframework-1.0.3.jar:classes/bot/lib/swing-worker-1.1.jar:org-jdesktop-layout.jar">
    <COMMENT>
    <EMBED type="application/x-java-applet;version=1.7.0" width="250" height="200" 
      code="bot.BotApplet" codebase="classes" archive="classes/bot/lib/Ab.jar:classes/bot/lib/swing-layout-1.0.4.jar:classes/bot/lib/appframework-1.0.3.jar:classes/bot/lib/swing-worker-1.1.jar:org-jdesktop-layout.jar">
    <NOEMBED>
    </COMMENT>
    No Java 2 support for APPLET
    </NOEMBED>
    </EMBED>
    </OBJECT>
    ANDRE Ani
    GNU/Linux et Informatique Libre
    https://andre-ani.fr

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

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

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 481
    Points : 48 806
    Points
    48 806
    Par défaut
    ça ne devrais pas être


    :classes/bot/lib/org-jdesktop-layout.jar

    plutot que
    :org-jdesktop-layout.jar


    Si il te le demande, c'est que tu l'utilise dans ton applet. En cas de doute, fait simplement une recherche, dans tout ton code, après "org.jdesktop.layout"

  18. #18
    Membre habitué Avatar de lostsoul
    Homme Profil pro
    Rédacteur web, blogueur, développeur web junior
    Inscrit en
    Novembre 2003
    Messages
    759
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Cher (Centre)

    Informations professionnelles :
    Activité : Rédacteur web, blogueur, développeur web junior
    Secteur : Conseil

    Informations forums :
    Inscription : Novembre 2003
    Messages : 759
    Points : 184
    Points
    184
    Par défaut
    Effectivement, erreur idiote d'ajout de la classe.

    Org-jdesktop-layout apparait dans le code, mais pas dans les imports.

    J'ai toujours le même message d'erreur...
    ANDRE Ani
    GNU/Linux et Informatique Libre
    https://andre-ani.fr

  19. #19
    Membre habitué Avatar de lostsoul
    Homme Profil pro
    Rédacteur web, blogueur, développeur web junior
    Inscrit en
    Novembre 2003
    Messages
    759
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Cher (Centre)

    Informations professionnelles :
    Activité : Rédacteur web, blogueur, développeur web junior
    Secteur : Conseil

    Informations forums :
    Inscription : Novembre 2003
    Messages : 759
    Points : 184
    Points
    184
    Par défaut
    Bon, toujours bloqué sur ce même problème...

    J'ai vu sur le net qu'il faudrait peut-être ajouter org-jdesktop-layout.jar dans le manifest (effectivement, il n'y ai pas dans le classpath, uniquement les 2 lib qui apparaissent dans le projet).
    Mais, comment éditer le manifest puisqu'il se trouve dans le jar ?

    Sinon, autre solution possible, changer de version de Java..?
    ANDRE Ani
    GNU/Linux et Informatique Libre
    https://andre-ani.fr

  20. #20
    Membre habitué Avatar de lostsoul
    Homme Profil pro
    Rédacteur web, blogueur, développeur web junior
    Inscrit en
    Novembre 2003
    Messages
    759
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Cher (Centre)

    Informations professionnelles :
    Activité : Rédacteur web, blogueur, développeur web junior
    Secteur : Conseil

    Informations forums :
    Inscription : Novembre 2003
    Messages : 759
    Points : 184
    Points
    184
    Par défaut
    En fait, org-jdesktop-layout.jar est bien dans le manifest quand j'ajoute cette lib dans le projet.

    La, j'ai plus d'idées...

    Je re donne mon code pour la page HTML, au cas ou :

    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
     
    <OBJECT classid="clsid:CAFEEFAC-0017-0000-FFFF-ABCDEFFEDCBA" width="250" height="200">
    <PARAM NAME="code" VALUE="bot.BotApplet">
    <PARAM NAME="codebase" VALUE="classes/"> 
    <PARAM NAME="type" VALUE="application/x-java-applet;version=1.7.0">
    <PARAM NAME="archive" VALUE="classes/bot/lib/Ab.jar:classes/bot/lib/swing-layout-1.0.4.jar:classes/bot/lib/org-jdesktop-layout.jar">
    <COMMENT>
    <EMBED type="application/x-java-applet;version=1.7.0" width="250" height="200" 
      code="bot.BotApplet" codebase="classes/" archive="classes/bot/lib/Ab.jar:classes/bot/lib/swing-layout-1.0.4.jar:classes/bot/lib/org-jdesktop-layout.jar">
    <NOEMBED>
    </COMMENT>
    No Java 2 support for APPLET
    </NOEMBED>
    </EMBED>
    </OBJECT>
    Et si j'utilisais le jar et pas la class ?
    ANDRE Ani
    GNU/Linux et Informatique Libre
    https://andre-ani.fr

Discussions similaires

  1. Réponses: 2
    Dernier message: 02/08/2006, 17h21
  2. [Débutant] Probléme dans applet
    Par brionne dans le forum Applets
    Réponses: 1
    Dernier message: 29/08/2005, 11h53
  3. ShowMessage "caché" derrière les autres fenêtres
    Par OutOfRange dans le forum Langage
    Réponses: 9
    Dernier message: 23/07/2005, 10h43
  4. [debutant][Applet] problèmes insertion applet java
    Par mlequim dans le forum Applets
    Réponses: 5
    Dernier message: 11/07/2005, 09h50
  5. Réponses: 4
    Dernier message: 01/07/2004, 11h53

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