Bonjour,
Je veux insérer une Applet (qui génère du son en boucle) à un projet Web dynamique développé avec Eclipse sur serveur Tomcat.
En suivant cette discussion http://www.developpez.net/forums/d49...se-applet-jsp/ j'ai créé le projet applet à part et jusque là tout va bien.
J'ai généré l'archive jar avec Eclipse.
Comme je ne savais pas où mettre la balise applet dans mon fichier formulaire.jsp je l'ai mise au feeling...
Ca donne ça :Au final quand je démarre le serveur tomcat sur eclipse en tapant l'adresse url correspondant à mon formulaire, j'obtiens ça : (cf. image en pièce jointe)
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 <%@ page language="java" contentType="text/html; charset=ISO-8859-1" pageEncoding="ISO-8859-1"%> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <% // on récupère les paramètres String nom=request.getParameter("txtNom"); if(nom==null) nom="inconnu"; String age=request.getParameter("txtAge"); if(age==null) age="xxx"; %> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> <title>Personne - formulaire</title> </head> <body> <applet code="AudioLoop.class" width="200" height="100" archive="son3.jar"> </applet> <center> <h2>Personne - formulaire</h2> <hr> <form action="" method="post"> <table> <tr> <td>Nom</td> <td><input name="txtNom" value="<%= nom %>" type="text" size="20"></td> </tr> <tr> <td>Age</td> <td><input name="txtAge" value="<%= age %>" type="text" size="3"></td> </tr> </table> <table> <tr> <td><input type="submit" value="Envoyer"></td> <td><input type="reset" value="Rétablir"></td> <td><input type="button" value="Effacer"></td> </tr> </table> </form> </center> </body> </html>
et il n'y a aucun son qui s'active.
Pour le code de l'applet pour info c'est le suivant :
Merci de votre aide.
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 // importation des classes nécessaire à la lecture des sons import java.awt.Graphics; import java.applet.AudioClip; @SuppressWarnings("serial") public class AudioLoop extends java.applet.Applet implements Runnable { // voir chapitre sur les Threads // création des 2 objets AudioClip AudioClip bgSound; AudioClip beep; Thread runner; // voir le chapitre sur les Threads public void start() { if (runner == null) { runner = new Thread(this); runner.start(); } } // l'applet s'arrête arrêt de tous les sons en cours de lecture public void stop() { if (runner != null) { if (bgSound != null) bgSound.stop(); runner = null; } } // initialisation de l'applet public void init() { // on indique quels sont les fichiers à lire //bgSound = getAudioClip(getCodeBase(),"loop.au"); //beep = getAudioClip(getCodeBase(), "beep.au"); bgSound = getAudioClip(getCodeBase(),"malfound.wav"); beep = getAudioClip(getCodeBase(), "ding.wav"); } // l'applet débute public void run() { if (bgSound != null) // le fichier loop.au n'est pas en cours de lecture... bgSound.loop(); // ... alors, il est lu en boucle Thread thisThread = Thread.currentThread(); while (runner == thisThread) { try { Thread.sleep(5000); // 5 secondes d'arrêt du programme } catch (InterruptedException e) { } if (beep != null) // si le fichier beep.au n'est pas en cours de lecture... beep.play(); // ... le lire } } // méthode d'affichage du texte accompagnant la lecture des sons public void paint(Graphics screen) { screen.drawString("Playing Sounds ...", 10, 10); } }
Partager