Bonjour
Je commence à travailler avec Processing et là je me heurte à un petit problème (probablement très basique):
via Minim, processing recupère bien le signal de mon microphone en mode run et fonctionne de même sous forme d'application mais, quand j'exporte, l'applet ne semble pas recevoir le signal (que ce soit en local ou en distant).
Dans la demo, j'ai trouvé cette phrase énigmatique:
"When you run your sketch as an applet you will need to sign it in order to get an input. "
Quelqu'un pourrait-il me dépanner ?
Merci d'avance.
Hors ligne
salut,
ici quelques éléments de réponse trouvés sur un site de référence :
citation :
Le principe des applets c'est qu'elles doivent être signées pour accéder à ton système. Dans l'exemple qui t'occupe, c'est pour éviter qu'une applet récupère ton entrée audio à ton insu et t'écoute (par exemple).
Un autre point : minim.getLineIn() va retourner l'entrée audio sélectionnée par l'utilisateur dans son système, donc pas forcément l'entrée micro (ça peut être l'entrée ligne).
puis la manip à effectuer dans un terminal...
citation :
tu as une applet qui a besoin d'etre signé pour cela il va te falloir créer une clé pour signer ton applet fait un tour aupres de ta commande keytool fourni dans le jdk de java sun
Code :
keytool -genkey -alias <le nom de ta clé> -keypass <pass de ta clé> -keystore <chemin du trousseau de clé> -storepass <mot de passe du trousseau>
Ensuite si tu veux que ta clé soit reconnu comme digne de confiance tu doit générer un CSR ( certificate signed request) qui doit etre envoyé a un certificate autority pour etre authentifier
Code :
keytool -certreg -alias <le nom de ta clé> -keypass <pass de ta clé> -keystore <chemin du trousseau de clé> -storepass <mot de passe du trousseau> -file <chemin de ton CSR>
RQ: pour lister les clé presente dans un trousseau de clé :
Code :
keytool -list -keystore <chemin du trousseau> -storepass <pass>
une foie que tu as envoyé le tout à ton CA celui ci te renvoi un trousseau de clé contenant ta clé avec laquel tu va signer ton application
Code :
jarsigner -keystore <ton trousseau> -storepass <le pass du trousseau> -keypass <le pass de ta clé> <ton fichier a signé> <le nom de ta clé>
à première vue il est possible d'accéder au linein dans un applet utilisant minim si tu obtient un seul et même .jar et que tu le signe.
dixit ddf l'auteur de Minim...
good luck
Hors ligne
Merci !
Jamais encore conversé avec mon Terminal mais c'est le bon moment me semble-t-il...
Encore merci.
ps: Pourrais-tu me dire de quel site de référence tu parles ?
Dernière modification par saturne-feerique (2009-05-12 18:26:44)
Hors ligne
Salut,
Récemment, j'ai du « signer » un applet aussi, j'ai pris des notes pour le refaire, voila à quoi ça ressemble, c'est à peu près la même méthode que celle proposée par oyster_twiter, pour que ça fonctionne il faut d'abord installer le JDK java
(java development kit), car les outils de signature ne sont pas fournis avec processing...
Voila les notes, c'est pour windows XP :
1 - télécharger le JDK (Java Development Kit), (les softs qui permettent de signer un applet ne sont pas inclus dans le JRE fourni avec processing)
depuis http://java.sun.com/javase/downloads/index.jsp
2 - installer et configurer les chemins
poste de travail, bouton de droite : propriétés, onglet avancé, cliquer "variables d'environnement", dans variables système, choisir "path", bouton modifier, ajouter le chemin au début de cette variable, et ajouter un point virgule pour la séparer des suivantes.
Dans mon cas, j'ai ajouté C:\Program Files\Java\jdk1.6.0_11\bin;
Dans une nouvelle fenêtre de commande, tester
echo %path% (on doit voir le chemin ajouté)
java -version (doit renvoyer la version installée)
javac (doit renvoyer les consignes d'utilisation de javac)
Si "... n’est pas reconnu en tant que commande interne" est la réponse, il y a un problème d'installation (probablement dans le path)
3 - signer un applet
exporter l'applet depuis processing
ouvrir une fenêtre de commande dans le répertoire ou est l'applet
keytool -genkey -alias yourKeyName -validity 10000 -keypass yourKeyPassword -dname "cn=Your Name, ou=Your Organizational Unit, o=Your Company, c=US"
jarsigner -keypass yourKeyPassword -storepass yourStorePassword yourSketch.jar yourKeyName
puis répéter cette dernière commande pour les autres .jar, s'il y en a
et c'est fini...
Hors ligne
Merci emoc.
Je travaille sur Mac.
Je teste tout cela ce soir et je vous tiens au courant.
Hors ligne
Bonjour,
J'ai effectivement réussi à créer une signature à partir du Terminal selon la méthode fournie par Emoc mais, hélas, cela ne m'a pas permis d'autoriser l'AudioInput dans mon applet, pire, puisque je ne peux plus interagir avec les exemples officiels en ligne (ni sur Safari, ni sur Firefox).
J'ai dû effectué une fausse manip'...
Je vais revoir tout en détail et je reviendrai pour conclure ce fil (dans quelques semaines peut-être:)
MAJ 1 juillet 2009:
Je n'avais signé qu'un seul .jar sur les 9 que comptait mon package...
Ce problème est résolu
Merci beaucoup.
Mais autres soucis, donc résultat pas encore visible; je vais lancer une autre discussion
Dernière modification par saturne-feerique (2009-07-01 14:13:00)
Hors ligne