Client/Serveur Java/Perl - Java - Programmation
Marsh Posté le 10-06-2002 à 09:29:03
non non rien à voir. Si tu as un server socket de l'autre coté (une socket qui écoute les demandes de connection) ca doit marcher quel que soit le language.
Le plus simple dans ton cas étant, depuis la machine qui lance ce process java, de faire un telnet sur l'ip et le port pour voir si ca répond.
Pense aussi aux restrictions de sécurité entre machine, particulièrement si tu es dans un environnmeent non windows
A+
Marsh Posté le 10-06-2002 à 09:36:04
Sinon un détail :
flux = new DataOutputStream(new BufferedOutputStream(sock.getOutputStream()));
tu peux le simplifier par :
flux = new DataOutputStream(sock.getOutputStream());
enfin je ne pense pas que c'est ça qui réglera ton problème...
Marsh Posté le 10-06-2002 à 14:43:32
Ce qui me gène bpc, c'est que j'avais déjà réalisé le client en Perl, qui marchait très bien. Je suis en train de la reprogrammer en Java mais j'arrive pas à me connecter.
Le socket est bien en écoute car je continue d'utiliser mon client Perl qui fonctionne.
Pour ce qui est des restrictions, il y en a aucune à ce niveau là, n'ayant pas encore mis de firewalling en place sur ce serveur.
C'est vraiment très étrange.
Marsh Posté le 13-06-2002 à 10:49:58
lelfe a écrit a écrit : Ce qui me gène bpc, c'est que j'avais déjà réalisé le client en Perl, qui marchait très bien. Je suis en train de la reprogrammer en Java mais j'arrive pas à me connecter. Le socket est bien en écoute car je continue d'utiliser mon client Perl qui fonctionne. Pour ce qui est des restrictions, il y en a aucune à ce niveau là, n'ayant pas encore mis de firewalling en place sur ce serveur. C'est vraiment très étrange. |
Je dis peut être une connerie là, mais tu essaierais pas de te connecter avec ton client JAVA alors que ton client PHP est connecté?
Marsh Posté le 13-06-2002 à 10:53:11
Et alors?? Si son serveur est capable de gérer plusieurs connections, je vois pas le problème!
Déjà, essaie de mettre une trace de l'IOException
catch (IOException e1) {
e1.printStackTrace(System.out);
}
pour voir quelle ligne lève l'exception.
Marsh Posté le 13-06-2002 à 10:55:53
gfive a écrit a écrit : Et alors?? Si son serveur est capable de gérer plusieurs connections, je vois pas le problème! |
C'est pour ça que je disais que je disais peut être une connerie!
Marsh Posté le 13-06-2002 à 22:50:35
J'ai déjà un catch de l'exception.
Mais je crois que je viens de comprendre.
J'utilise de l'UDP !
Je suis presque sur que c ca.
Comment on fait une connexion socket UDP en Java ?
Marsh Posté le 13-06-2002 à 23:06:56
lelfe a écrit a écrit : J'ai déjà un catch de l'exception. Mais je crois que je viens de comprendre. J'utilise de l'UDP ! Je suis presque sur que c ca. Comment on fait une connexion socket UDP en Java ? |
mais le monsieur te disait d'imprimer la stackTrace de l'exception avec e.printStackTrace() dans ton catch {}, afin de voir ou cette exception etait levée...
Marsh Posté le 14-06-2002 à 08:58:20
c'est clair que si ton serveur est UDP et que tu essaies de te connecter en TCP dessus ca va desuite moins bien marcher
DatagramSocket pour l'udp
Marsh Posté le 09-06-2002 à 12:13:24
Salut
J'ai entrepris de créer un petit système client/Serveur avec le serveur Perl mais le client en Java.
J'ai donc créer une classe pour géré qui utilise des données primitives pour l'envoi.
Je me connecte au serveur en utilisant un DataOutputStream à l'objet Socket.
Pour faire plus simple, voici mon code de connexion qui gènère une IOException
public void Connect() {
// Création du Socket - Connexion
try {
// S'il est déjà ouvert, on le ferme
if (sock != null) sock.close();
// Et on en ouvre un nouveau
sock = new Socket(IP_Serveur,Port);
// Lorsque la connexion a été établie on ouvre le flux
flux = new DataOutputStream(new BufferedOutputStream(sock.getOutputStream()));
}
catch (UnknownHostException e2) {System.out.println("[Client] Connexion: Hote inconnu" ); }
catch (IOException e1) {System.out.println("[Client] Connexion: Serveur introuvable" ); }
}
Est-il impossible de créer un socket vers un serveur non Java ?
Dois-je utiliser une autre technique ?
Merci d'avance
Aurélien