الأحد، 5 يناير 2014

Unable to send data from my server to client

I made a simple chat program where sending data from MyClient to MyServer is working, but when sending data from MyServer to MyClient is not working. So where I'm making mistake?

//This is MyServer program

import java.io.*;

import java.net.*;

public class MyServer{

ServerSocket ss; Socket s; DataInputStream din; DataOutputStream dout;

public MyServer(){

try{ System.out.println("Server START......"); ss=new ServerSocket(9000); s=ss.accept(); System.out.println("Client Connected....."); din=new DataInputStream(s.getInputStream()); dout=new DataOutputStream(s.getOutputStream()); chat(); }catch(Exception e){ System.out.println(e);}

}

public void chat()throws IOException{

String str=" "; do{ str=din.readUTF(); System.out.println("Client Message: "+str); dout.writeUTF("I have recieved ur message:"+str); dout.flush(); }while(!str.equals("stop"));

}

public static void main(String arg[]){

new MyServer();}

}

//This is MyClient program

import java.io.*;

import java.net.*;

public class MyClient{

Socket s; DataInputStream din; DataOutputStream dout;

public MyClient(){

try{ s=new Socket("localhost",9000); System.out.println(s); din=new DataInputStream(s.getInputStream()); dout=new DataOutputStream(s.getOutputStream()); chat(); }catch(Exception e){ System.out.println(e);}

}

public void chat()throws IOException{

BufferedReader br=new BufferedReader(new InputStreamReader(System.in)); String s1;do{ s1=br.readLine(); dout.writeUTF(s1); dout.flush(); System.out.println("Server Message: "+din.readUTF()); }while(!s1.equals("stop"));

}

public static void main(String arg[]){

new MyClient();}

}


View the original article here

ليست هناك تعليقات:

إرسال تعليق