connexion impossible entre servlet et applet

franckdia

Membre actif
18 Décembre 2001
305
0
Bonjour.
Je viens de réaliser une servlet qui communique avec une applet en écoutant les connexions entrantes sur le port 4712, côté servlet pas de problème cela fonctionne. Ce que je ne parviens pas à faire c'est établir la communication de l'applet à la servlet. J'obtiens systématiquement des messages d'erreur.
Le code qui établi la connexion se trouve dans la méthode inti() et ressemble à ceci:

try {

socket = new Socket(getCodeBase().getHost(),port);
in = new DataInputStream(socket.getInputStream());
out = new DataOutputStream(socket.getOutputStream());
out.writeUTF(name);

}

catch(IOException io) {
textComposant.append("\nErreur io c koi cette bête ?\n" + io + "\n");
}

Lorsque je lance l'Applet l'exeption suivante est interceptée:
Erreur io c koi cette bête ?
Java.net.ConnecException: Connection refused

Et sur la console j'ai le message java.lang.NullPointerException
at Mon_Chat.run(Mon_Chat.java:154)
at java.lang.Thread.run(Thread.java:554)



Je précise que la servlet se trouve dans le répertoire suivant:
/usr/local/jakarta-tomcat-4.1.24/webapps/mine/WEB-INF/classes
 
Tu as essayé de faire un System.out.println(getCodeBase().getHost()); ?

Je ne sais pas ce que te retournes cette méthode getCodeBase() (un objet de type URL.. ?), mais c'est peut-être de ce côté là que vient le problème, puisque il me semble (j'espère ne pas dire de bêtises) que le reste devrait fonctionner.

 
C bon j'ai résolu le problème en modifiant un peu le code de l'applet de la manière suivante:

try {
InetAddress adresse = InetAddress.getLocalHost();
socket = new Socket(adresse, port);
in = new DataInputStream(socket.getInputStream());
out = new DataOutputStream(socket.getOutputStream());
out.writeUTF(name);

}

catch(IOException io) {
textComposant.append("\nErreur io c koi ?\n" + io + "\n");
}

ça marche impec maintenant mais j'ai d'autres pb qui se sont ajoutés. Des pb plus d'interface.