Bonjour,

Je viens de créer ma première applet JAVA en suivant la FAQ de DVP ...

Mais il est impossible d'éxécuter mon applet ...

Le code est très simple, je lis une image passée en paramètre, et je l'affiche redimensionnée dans l'applet. C'est TOUT !

L'image est appelée grace à php ... Voici comment je l'appelle :

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
<?php
function afficheImage($img_src,$img_w){
 
if(file_exists($img_src)){
	// Lit les dimensions de l'image
	$size = GetImageSize($img_src);  
	$width = $size[0];
	$height = $size[1];
	$scale = $width / $height;
 
	$goodWidth = $width;
	$goodHeight = $height / $scale;
 
	echo "<applet code='ChargeImage.class' width='".$goodWidth."' height='".$goodHeight."'>";
	echo "	<param name='IMAGE' value='".$img_src."'>";
	echo "Votre navigateur n'est pas compatible JAVA !";
	echo "</applet>";
}else{
	echo "Le fichier ".$img_src." n'existe pas !";
}
 
}
 
?>
Cela revient a faire ca en HTML pour tester :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
<applet code='ChargeImage.class' name="ChargeImage" width='150' height='150'>
	<param name='IMAGE' value='pages/test.png'>
Votre navigateur n'est pas compatible JAVA !
	</applet>
Avec ce code, l'applet reste vide et l'erreur est "Class not found" ...

Voici mon 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
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
import java.applet.Applet;
import java.awt.Color;
import java.awt.Event;
import java.awt.Graphics;
import java.awt.Image;
import java.awt.MediaTracker;
import java.awt.image.FilteredImageSource;
import java.awt.image.ImageFilter;
import java.awt.image.ImageProducer;
import java.awt.image.ReplicateScaleFilter;
 
public class ChargeImage extends Applet implements Runnable {
 
  Thread tr;
 
  private static final long serialVersionUID = 1L;
 
  // Buffer pour l'imageO de fond
  Image                     imageO;
 
  Image                     imageR;
 
  // MediaTracker, pour suivre le chargement des images
  MediaTracker              mt               = null;
 
  // --------------------------------------------------
  // INITIALISATION DE L'APPLET
  // --------------------------------------------------
  public void init() {
    // Couleur de fond de l'applet en blanc
    setBackground ( Color.white );
    // Chargement de l'imageO de fond
    imageO = getImage ( getCodeBase () , getParameter ( "IMAGE" ).toString () );
    // Initialiser le MediaTracker
    mt = new MediaTracker ( this );
    // Démarrer le suivi du chargement d'images
    mt.addImage ( imageO , 0 );
    // Attendre que toutes les images soient chargées
    try {
      mt.waitForID ( 0 );
 
      //ImageFilter replicate = new ReplicateScaleFilter( imageO.getWidth( this ) / 2,imageO.getHeight( this ) / 2 );
      ImageFilter replicate = new ReplicateScaleFilter ( this.getWidth () , this.getHeight () );
      ImageProducer prod = new FilteredImageSource ( imageO.getSource () , replicate );
      imageR = createImage ( prod );
      mt.addImage ( imageR , 1 );
      mt.waitForID ( 1 );
    } // end try
    catch ( InterruptedException e ) {
    } // end catch
  } // end init()
 
  // --------------------------------------------------
  // AFFICHAGE
  // --------------------------------------------------
  public void paint( Graphics g ) {
 
    g.drawImage ( imageR , 0 , 0 , this );
 
       } // end if
  } // end paint()
 
  public ChargeImage() {
    if (tr == null) {
        tr = new Thread(this);
        tr.start();
    }
  }
 
  public void run() {
 
    // TODO Raccord de méthode auto-généré
 
  }
 
} // end ChargeImage
Voyez vous le soucis ?

Merci a vous !!!