Forum Clubic

[Résolu][Java]La JVM Microsoft aura ma peau

Salut les gens,

Je dois réaliser un projet java pour mon stage. L’un des composants de ce projet, c’est une applet “classsique”.

Celle-ci ne passe pas sur la JVM Microsoft. Pas tellement étonnant.

Il m’est donc demandé de créér une applet spéciale qui sera lancée à la place de mon applet si le client a la JVM Microsoft et non la Sun. L’applet de secours doit juste afficher un message.

Bref, un truc simple.

Seulement la ca va faire quelques heures que je pète un cable la dessus. Mon code (plus simple tu meurs) ne s’execute pas correctement :



import java.applet.Applet;
//import java.awt.Component;
//import java.awt.Frame;
//import java.awt.Label;

//import javax.swing.JOptionPane;

public class MaClasse extends Applet {
	
//	public Label label = new Label();

	public void init() {

  System.out.println("initialisee");

	}

	public void start() {

//  JOptionPane.showMessageDialog(getFrame(),
//
//  "Votre navigateur est actuellement réglé pour utiliser la [machine virtuelle Java Microsoft](http://www.clubic.com/telecharger-fiche12755-machine-virtuelle-java-microsoft.html).\n" + "Veuillez le configurer de façon à ce qu'il utilise la machine virtuelle Java de Sun.",
//
//  "Erreur : Machine virtuelle Microsoft détectée",
//
//  JOptionPane.WARNING_MESSAGE);
  
/*  label.setText("TEST");  
  add(label);*/
	}


}

Comme vous pouvez le constater, j’ai commenté plein de trucs notamment les imports en pensant que c’était peut être ca qui causait le problème.

Le problème, ha oui parlons en, la console de la JVM Microsoft m’affiche :

java.lang.ClassNotFoundException: MaClasse
at com/ms/vm/loader/URLClassLoader.loadClass
at com/ms/vm/loader/URLClassLoader.loadClass
at com/ms/applet/AppletPanel.securedClassLoad
at com/ms/applet/AppletPanel.processSentEvent
at com/ms/applet/AppletPanel.processSentEvent
at com/ms/applet/AppletPanel.run
at java/lang/Thread.run

J’ai lu sur différents forums que :

fallait éviter les packages
fallait signer l’applet.

J’ai essayé les deux, ca me donne toujours la même erreur.

Par conséquent, si une bonne âme veut bien m’éclairer avant que je n’aille louer un chasseur japonais et me kamikazer sur le siège de Microsoft, elle aurait ma reconnaissance éternelle.

Heu…; C’est moi où il n’y a vraiment plus rien?

Est-ce que tu compiles bien avec un -source 1.2 -target 1.1?

–Edit
Sans le quote :wink:

– Edit 2:
Et la machine virtuelle de Netscape?

Problème résolu en :

_ forcant la compilation sous eclipse en 1.1 (je ne suis pas sur que ce soit déterminant mais je l’ai fait quand même suite à ton conseil)
_ utilisant dubuild au lieu de cabarc pour construire le cab
_ signant l’applet

Merci pour le coup de main!