begin process at 2012 02 13 23:08:12
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive Java

 > 

Archives

 > 

Au secours

 > 

Socket bloqué


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Socket bloqué

mercredi 21 avril 2004 à 21:54:44 | Socket bloqué

ultrafil

Salut, j'ai un problème un peu bizard j'espere que quelqu'un pourra m'aider car ca fait bien 1 semaine que je bloque la dessus et je ne comprend plus rien :)

Lorsque j'ouvre une socket que j'envoi un flux xml, le serveur le recoit bien, sans probleme.
Maintenant quand j'essai d'envoyer un message de retour, comme "ok le message est correct" le dialogue se bloque bizarement tres tot :(

voici mon code:

// code du serveur
SS = new ServerSocket(port);
SS.setReuseAddress(true);

Socket S = SS.accept();
System.out.println("Client connecté au serveur");

// flux d'entrée du réseau sur le serveur
InputStream in = S.getInputStream();
// flux de sortie sur le réseau sur le serveur
PrintWriter sortie = new PrintWriter ( new OutputStreamWriter ( S.getOutputStream()));

DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
DocumentBuilder builder = factory.newDocumentBuilder();
Document document = builder.parse(in);
System.out.println("flux xml recu avec succes");

// réponse ok
sortie.println("commande ok");
sortie.flush();




// code du client
Socket S = new Socket(addrServer, port);
System.out.println("Socket cree");

BufferedReader entree = new BufferedReader(new InputStreamReader(S.getInputStream())); // InputStream from client
BufferedWriter sortie = new BufferedWriter(new OutputStreamWriter(S.getOutputStream()));

File f = new File("c:/demandeBDD.xml");
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
DocumentBuilder builder = factory.newDocumentBuilder();
Document document = builder.parse(f);

// Use a Transformer for output
TransformerFactory tFactory = TransformerFactory.newInstance();
Transformer transformer = tFactory.newTransformer();

DOMSource source = new DOMSource(document);

StreamResult result = new StreamResult(sortie);
transformer.transform(source, result);
sortie.flush();

System.out.println("Demande envoyé");

// les 2 prochaines lignes bloque le dialogue ???
String reponse = entree.readLine();
System.out.println(reponse);



Si je mets les 2 dernieres lignes de code en commentaire le flux xml est bien envoyé, le serveur le recoit et peut travailler dessus.

Si les 2 dernières lignes ne sont pas en commentaires le serveur ne recois pas le flux xml et la connexion est bloqué :(

D'où peut venir l'erreur????

ultrafil.fr.st
jeudi 22 avril 2004 à 15:26:59 | Re : Socket bloqué

safisoft



Tu sais la methode readline bloque le prgm! alors ici je X que l'une des choses suivantes peut etre votre pbm:
- readline bloque le prgm avant qu'il termine le transfert.
- tu fais un essai avec localhost alors que tu n'utilise pas des Threads pour les deux prgm.
Il peut y etre d'autre cause, pour cela affichez le message de catch(TransformerException). J'espère que celà peut t'aider.



Cette discussion est classée dans : code, serveur, flux, socket, sortie


Répondre à ce message

Sujets en rapport avec ce message

Controle de flux sur Socket [ par Moucave ] Bonjour à tous,je vais commencer la matinée avec une petite question pas facile. En fait j'ai programmé un petit échange de données entre un client (p Communication par Sockets dans une JSP [ par hindou23 ] Bonjour tout le monde, Au cours de mon application , j'ai besoin d'insérer ou faire appel au programme qui m connecte au serveur dans ma jsp... J'a Socket [ par yasssiinnee ] je dois implémenter un chat en java permettant la conversation entre 2 clients via un serveur qui sert d'intermédiaire. Je dois avoir dans mon program Comment faire communiquer un telephone et un serveur web en utilisant des socket? [ par raboolito ] Bonjour, je n'arrive pas à résoudre le problème. Je souhaiterais créer une application sur mobile. Cette application servirais à envoyer des informati Code flux video webcam d-link Dcs-2121 [ par yan19 ] Bonjour à tous, Je vous explique vite fait... J'ai une webcam d-link dcs-2121 (webcam IP), j'arrive sans soucis à accéder au panel de commande à part Probleme de creation de servlet [ par hindou23 ] Bonjour tout le monde, Vu que je suis en cours d'un développement d'une application web , j'ai essayé de créer une servlet jsp pour la saisie d'un co probleme utilisation code source [ par affection007 ] salut j'ai un projet de télémaintenance entre 2 pc distant j'ai la socket client et la socket serveur mé j'ai un probleme comment je peut mettre cet encore un probleme [ par damiendumas ] Salut !Voila mon programme : pas très compliqué !!!import java.net.*;import java.io.*;public class dams_irc{ public static void main(St une session [ par aamsa ] Bonsoir à tous, vous pouvez m'aider à créer une session privée avec un autre client le code de mon application est le suivant:public class Serveur {pr


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,842 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales