[Applet Java] Problème d'applet

Problème d'applet [Applet Java] - Java - Programmation

Marsh Posté le 03-05-2005 à 11:23:11    

Bonjour à tous,
 
Voilà la structure de mon projet :
 

Code :
  1. WEB-INF/classes/be/bhc/citiesonline/
  2. WEB-INF/classes/be/bhc/citiesonline/applet
  3. WEB-INF/classes/be/bhc/citiesonline/applet/exceptions
  4. WEB-INF/classes/be/bhc/citiesonline/utils
  5. WEB-INF/classes/be/bhc/citiesonline/web
  6. WEB-INF/classes/com/linuxnet/jpcsc
  7. WEB-INF/lib/jpcsc.dll
  8. WEB-INF/lib/struts.jar
  9. WEB-INF/lib/util.jar
  10. WEB-INF/tlds
  11. be/bhc/citiesonline/
  12. be/bhc/citiesonline/applet
  13. be/bhc/citiesonline/applet/exceptions
  14. be/bhc/citiesonline/utils
  15. be/bhc/citiesonline/web
  16. com/linuxnet/jpcsc


 
Dans une page jsp, j'inclus un applet.
Celui-ci fonctionne mais lorsque j'arrive à un moment où je fait appel à ma classe SmartCardReader, mon applet ne fait plus rien et je peux voir l'erreur suivante dans la Sun Java Console :
 

Code :
  1. java.lang.NoClassDefFoundError
  2. at be.bhc.citiesonline.applet.SmartCardReader.<init>(SmartCardReader.java:20)
  3. at CitiesOnlineApplet.checkCard(CitiesOnlineApplet.java:188)
  4. at CitiesOnlineApplet.action(CitiesOnlineApplet.java:84)
  5. at java.awt.Component.handleEvent(Unknown Source)
  6. at java.awt.Component.postEvent(Unknown Source)
  7. at java.awt.Component.postEvent(Unknown Source)
  8. at java.awt.Component.dispatchEventImpl(Unknown Source)
  9. at java.awt.Component.dispatchEvent(Unknown Source)
  10. at java.awt.EventQueue.dispatchEvent(Unknown Source)
  11. at java.awt.EventDispatchThread.pumpOneEventForHierarchy(Unknown Source)
  12. at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
  13. at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
  14. at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
  15. at java.awt.EventDispatchThread.run(Unknown Source)


 
Si vous avez la moindre idée du pourquoi de cette erreur cela serait sympa merci d'avance!

Reply

Marsh Posté le 03-05-2005 à 11:23:11   

Reply

Marsh Posté le 03-05-2005 à 12:45:42    

[:undertaker666] plzzzzzzzz

Reply

Marsh Posté le 03-05-2005 à 13:07:12    

SmartCardReader.java a une clause import d'une classe qui ne se trouve pas dans le classpath de ton appli.

Reply

Marsh Posté le 03-05-2005 à 14:26:09    

oui, comme il l'a dit dans un autre topic, il espere utiliser un jar qui est dans son WEB-INF/lib ... avec son applet. :/
(ps: <init> c'est pour le constructeur, non? :o)


Message édité par the real moins moins le 03-05-2005 à 14:27:26

---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
Reply

Marsh Posté le 03-05-2005 à 14:39:30    

Oui :s
 
Bon j'ai réussis à me procuper le code source de ce qu'il y avait dans le .jar et maintenant cela à l'air de fonctionner je pense que je bute sur le dernier bug... il faut que j'utilise un dll pour que l'applet fonctionne et apparement ca le load pas même s'il est présent dans le classpath  :??:  
 
Voilà ce que j'ai comme erreur cette fois :
 

Code :
  1. java.lang.ExceptionInInitializerError
  2. at com.linuxnet.jpcsc.Context.<clinit>(Context.java:21)
  3. at be.bhc.citiesonline.applet.SmartCardReader.<init>(SmartCardReader.java:19)
  4. at CitiesOnlineApplet.checkCard(CitiesOnlineApplet.java:188)
  5. at CitiesOnlineApplet.action(CitiesOnlineApplet.java:84)
  6. at java.awt.Component.handleEvent(Unknown Source)
  7. at java.awt.Component.postEvent(Unknown Source)
  8. at java.awt.Component.postEvent(Unknown Source)
  9. at java.awt.Component.dispatchEventImpl(Unknown Source)
  10. at java.awt.Component.dispatchEvent(Unknown Source)
  11. at java.awt.EventQueue.dispatchEvent(Unknown Source)
  12. at java.awt.EventDispatchThread.pumpOneEventForHierarchy(Unknown Source)
  13. at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
  14. at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
  15. at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
  16. at java.awt.EventDispatchThread.run(Unknown Source)
  17. Caused by: java.security.AccessControlException: access denied (java.lang.RuntimePermission loadLibrary.jpcsc)
  18. at java.security.AccessControlContext.checkPermission(Unknown Source)
  19. at java.security.AccessController.checkPermission(Unknown Source)
  20. at java.lang.SecurityManager.checkPermission(Unknown Source)
  21. at java.lang.SecurityManager.checkLink(Unknown Source)
  22. at java.lang.Runtime.loadLibrary0(Unknown Source)
  23. at java.lang.Runtime.loadLibrary(Unknown Source)
  24. at com.linuxnet.jpcsc.PCSC.<clinit>(PCSC.java:136)


 
Si vous avez une idée...  :jap:  ca serait vraiment très gentil, trois jours que je bute sur l'intégration de cet applet... mon maitre de stage va pas être content  :(

Reply

Marsh Posté le 03-05-2005 à 18:36:58    

Une DDL ... Dans une applet? :heink:
 
T'es sûr? [:totoz]

Reply

Marsh Posté le 03-05-2005 à 18:38:20    

Une DLL ... Dans le classpath? :heink:
 
T'es sûr? [:totoz]


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
Reply

Marsh Posté le 03-05-2005 à 18:39:49    

:o

Reply

Marsh Posté le 04-05-2005 à 10:19:36    

Oui ben en fait l'application a besoin de cette dll pour fonctionner donc je suppose qu'elle doit pouvoir la loader depuis le serveur... Mais apparement ca pose un problème  :??:

Reply

Marsh Posté le 04-05-2005 à 10:46:32    

mais oui hein [:rofl]
 
Comment dire ... non?

Reply

Marsh Posté le 04-05-2005 à 10:46:32   

Reply

Marsh Posté le 04-05-2005 à 11:33:38    

Hein?

Reply

Marsh Posté le 04-05-2005 à 12:00:46    

Demande à ton maitre de stage si c'est une top idée d'imaginer utiliser un DLL dans une applet.
 
Réfléchis aux implications (qu'est ce que tu vas devoir faire pour pouvoir l'utiliser, considère le cas d'un utilisateur lambda qui n'a rien d'installé et qui doit lancer ton applet depuis son navigateur, etc).
 
Elle est où pour l'instant ta DLL?

Reply

Marsh Posté le 04-05-2005 à 12:01:23    

DANS TON KUKU §§§
 
.. .t'es en congé toi, ou tu reviens sur le forum en journée? [:cupra]


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
Reply

Marsh Posté le 04-05-2005 à 12:08:22    

Non je bosse mais j'ai un bug qui me pête les couilles alors je viens me détendre un peu ici :o
 
Et puis tu me manquais [:rougit]


Message édité par darklord le 04-05-2005 à 12:08:34
Reply

Marsh Posté le 04-05-2005 à 12:16:13    

[:w3c compliant]


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
Reply

Marsh Posté le 04-05-2005 à 12:17:14    

je me disais aussi que c'était trop gros :o
 

Reply

Marsh Posté le 04-05-2005 à 12:40:00    

Reply

Marsh Posté le 04-05-2005 à 12:42:35    

Salut,
 
Hé bien voià en fait l'applet java est censé authentifier (via un lecteur de carte nécessaire) un utilisateur via sa carte d'identité électronique, cet applet fonctionne correctement en mode simulé dans Eclipse mais dès son intégration dans la page jsp du site (tournant sur Silvertream), j'ai eu des problème.
 
Premièrement j'ai eu des problèmes car apparement le .class de l'applet devait se trouver à la racine du site, comme cela ça fonctionne. Ensuite j'ai eu des problèlmes pour utiliser des classes contenue dans un .jar du répertoire WEB-INF/lib, chose que j'ai réglée par l'aquisition des sources et de l'intégration de celles-ci dans le package de applet. Pour finir maintenant, un dernier problème persiste, pour son utilisation, l'applet a besoin d'avoir la librairie jpcsc.dll dans son PATH, et ben j'ai les erreures suivantes à un certain moment dans l'utilisation de l'applet :
 

Code :
  1. java.lang.ExceptionInInitializerError
  2.     at com.linuxnet.jpcsc.Context.<clinit>(Context.java:21)
  3.     at be.bhc.citiesonline.applet.SmartCardReader.<init>(SmartCardReader.java:19)
  4.     at CitiesOnlineApplet.checkCard(CitiesOnlineApplet.java:188)
  5.     at CitiesOnlineApplet.action(CitiesOnlineApplet.java:84)
  6.     at java.awt.Component.handleEvent(Unknown Source)
  7.     at java.awt.Component.postEvent(Unknown Source)
  8.     at java.awt.Component.postEvent(Unknown Source)
  9.     at java.awt.Component.dispatchEventImpl(Unknown Source)
  10.     at java.awt.Component.dispatchEvent(Unknown Source)
  11.     at java.awt.EventQueue.dispatchEvent(Unknown Source)
  12.     at java.awt.EventDispatchThread.pumpOneEventForHierarchy(Unknown Source)
  13.     at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
  14.     at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
  15.     at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
  16.     at java.awt.EventDispatchThread.run(Unknown Source)
  17. Caused by: java.security.AccessControlException: access denied (java.lang.RuntimePermission loadLibrary.jpcsc)
  18.     at java.security.AccessControlContext.checkPermission(Unknown Source)
  19.     at java.security.AccessController.checkPermission(Unknown Source)
  20.     at java.lang.SecurityManager.checkPermission(Unknown Source)
  21.     at java.lang.SecurityManager.checkLink(Unknown Source)
  22.     at java.lang.Runtime.loadLibrary0(Unknown Source)
  23.     at java.lang.Runtime.loadLibrary(Unknown Source)
  24.     at com.linuxnet.jpcsc.PCSC.<clinit>(PCSC.java:136)


 
J'ai apparement pu voir que d'autres avaient le problème et je n'ai pas vu de solution (à part p-e signer l'applet) donc je ne vois pas très bien comment faire et je vous demandais à vous si vous n'aviez pas une quleconque idée, voilà merci d'avance  :jap:

Reply

Marsh Posté le 04-05-2005 à 13:44:22    

Bin évidemment que tu dois la signer [:mlc]

Reply

Marsh Posté le 04-05-2005 à 13:59:56    

fais gaffe, y'a benou qui va débarquer pour te dire de faire gaffe (!) parce que tu te moinmoinises :sarcastic:


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
Reply

Marsh Posté le 04-05-2005 à 14:03:52    

Bon oui mais voilà comment faire pour signer un applet .class? et surtout dois-le signer avec le certificat du serveur? comment?

Reply

Marsh Posté le 04-05-2005 à 14:08:54    

Commence déjà par prendre le temps de te renseigner un minimum sur ce que c'est et pq tu dois la signer. On aura beau t'expliquer pas à pas comment ça fonctionne, tu vas revenir vers nous avec d'autres questions sans cesse.
 
Prends le temps de te renseigner un peu ... RTFM quoi :o

Reply

Marsh Posté le 04-05-2005 à 14:54:31    

Ben merci pour l'aggressivité si vous ne voulez pas m'aider ne me répondez tout simplement pas, j'ai déjà réussit à signer un applet .jar auparavent pour qu'il puisse avoir les droits d'accès sur le serveur avec keytool mais je ne sai spas comment faire pour signer un applet contenue dans un .class. Merci de me répondre uniquement si vous voulez pas m'agresser pour mes questions bêtes...

Reply

Marsh Posté le 04-05-2005 à 22:06:58    

brupistone a écrit :

Ben merci pour l'aggressivité si vous ne voulez pas m'aider ne me répondez tout simplement pas, j'ai déjà réussit à signer un applet .jar auparavent pour qu'il puisse avoir les droits d'accès sur le serveur avec keytool mais je ne sai spas comment faire pour signer un applet contenue dans un .class. Merci de me répondre uniquement si vous voulez pas m'agresser pour mes questions bêtes...


as tu lu mes 2 liens surtout le 2eme ?!

Reply

Marsh Posté le    

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed