Cela me pousse vers le haut du mur. J'ai vérifié et revérifié l'orthographe et les chemins. J'ai essayé à peu près toutes les combinaisons de chemins, y compris les chemins relatifs, absolus et http. Je continue à obtenir l'erreur suivante lorsque vous essayez de charger une applet Java:Déploiement de l'applet Java, ClassNotFoundException (classe primaire)
java.lang.ClassNotFoundException: AppletClient.class
at sun.plugin2.applet.Applet2ClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.plugin2.applet.Plugin2ClassLoader.loadCode(Unknown Source)
at sun.plugin2.applet.Plugin2Manager.createApplet(Unknown Source)
at sun.plugin2.applet.Plugin2Manager$AppletExecutionRunnable.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
Exception: java.lang.ClassNotFoundException: AppletClient.class
Le code HTML utilisé pour charger l'applet:
<applet width="100" height="100" archive="applet/myapplet.jar, applet/applet_dependency.jar" code="AppletClient.class">
<param value="blahblah" name="username">
<param value="false" name="codebase_lookup">
</applet>
L'applet est dans un répertoire relatif, "applet", de le chemin de la page actuelle. J'ai décompressé le fichier jar et peut voir AppletClient.class. Aussi, dans la source du projet, il est orthographié de cette façon (boîtier et tout). J'ai essayé avec/sans les paramètres. J'ai changé les noms des fichiers d'archive dans la balise include de l'applet juste pour voir si j'obtiens une erreur différente pour les mauvais noms de fichier (même erreur).
J'ai fait manuellement GET sur les bocaux pour m'assurer que le serveur répond aux demandes (c'est).
J'ai essayé avec et sans l'étiquette de base de code, avec toutes les différentes variétés de chemins (commencer à obtenir de mauvaises erreurs "nombre magique" sur ceux-ci).
Je sais que cette erreur apparaît parfois lorsqu'une dépendance ne se charge pas, ce qui peut être trompeur, mais toutes les dépendances sont présentes, prises en compte et peuvent être recherchées via les GET manuels.
Entre chaque tentative, je vide toujours mon cache dans FireFox. Ces problèmes sont également reproduits dans IE8 et Chrome.
Par ma console Java à partir du navigateur, j'utilise le plug-in Java 1.6.0_20. C'est à partir de la même machine que je développe l'applet, qui fonctionne bien via Eclipse. Enfin, j'ai lancé Fiddler2, et je ne vois aucune requête pour les fichiers jar. Le site hôte fonctionne à partir de mon débogueur Visual Studio, donc il fonctionne sur localhost. Mais je vois les demandes pour toutes les autres ressources sur Fiddler. Juste ... pas de bocaux. NULLE PART. J'ai effacé le journal, effacé le cache de mon navigateur et fait un rafraîchissement de ctrl-R. Et encore, pas une seule demande Jar sur le journal Fiddler.
J'ai même fait une écriture différée (avec JS) de la balise applet après le chargement de la page, une fois que toute l'activité Fiddler a ralenti. L'élément est écrit dans le document (et je peux voir la fenêtre d'erreur Java 100x100), mais pas une seule demande apparaît sur Fiddler.
Des suggestions, avant que je vais ramper dans le coin et pleurer moi-même pour dormir?
EDIT: A partir de la console Java, si je frappe "l" (el) pour "vider la liste des classloader", je vois quelque chose qui ressemble à ceci:
Live entry: key=http://localhost:55446/BaseWebSite/,http://localhost:55446/BaseWebSite/applet/myappliet.jar, http://localhost:55446/BaseWebSite/applet/applet_dependency.jar, refCount=1, threadGroup=sun.plugin2.applet.Applet2ThreadGroup[name=http://localhost:55446/BaseWebSite/-threadGroup,maxpri=4]
EDIT 2: L'applet fait une mise en réseau (Jabber/XMPP), donc j'ai fait un cert auto-signé pour voir si cela a aidé. Obtenez invité à propos du certificat auto-signé - donc il est en train de lire quelque chose - mais ne fonctionne toujours pas. Et c'est pas apparaissant dans la liste des fichiers de cache Java ... et toujours rien sur Fiddler.
J'ai effacé le cache Java (bonne astuce!) Mais toujours pas de chance, et toujours pas d'activité sur le violon pour les bocaux. Et non, l'AppletClient n'est pas dans un chemin de classe. – Matt
Ce que je voulais dire était non, AppletClient n'est pas dans un paquet. Il n'a pas de paquet, et est à la racine du premier jar listé dans l'archive. – Matt
Merci pour l'aide Lauri. Toujours pas de chance de ma part :(J'ai signé le code avec un cert autosigné, parce qu'il contient du code de réseau qui veut être signé, je suis invité à me renseigner sur le CERT auto-signé. – Matt