View Single Post
  #1 (permalink)  
Old 12-26-2007, 08:28 AM
JavaEmpires JavaEmpires is offline
Member
 
Join Date: Dec 2007
Posts: 19
JavaEmpires is on a distinguished road
[B]Simple Client connected to server but not exchanging messages[/B]
Hello all,
I m new to Networking.
I m trying to write a simple client-server program wherein server greets client when connected and vice versa.

Here's is a complete Client and Server program.

/*Server.java*/

public class Server extends Thread {
public static final int V_PORT = 2013;
protected ServerSocket server_socket;

public Server()
{
try{
InetAddress iaddr = InetAddress.getLocalHost();
server_socket = new ServerSocket(V_PORT, 5, iaddr);
System.out.println("\nConnected to InetAddress " + server_socket.getInetAddress().toString());

System.out.println("\nPort " + V_PORT+" is up and running");

}


catch(Exception e){
System.out.println("\nError : Port " + V_PORT+" is already used by another process");
}
}



public void run(){
InputStream receive;
OutputStream send;
String msg = "Hello Client WelCome!";
String output="";
byte b[] = new byte[100];
while(true){
try{
Socket client = server_socket.accept();
send = client.getOutputStream();
send.write(msg.getBytes());
receive = client.getInputStream();
receive.read(b);
System.out.println("\nClient Said : "+ b.toString());



}
catch(Exception e){
System.out.println("\nCould not connect to client" + e.toString());
e.printStackTrace();

}
}

}

public static void main(String args[]){
new Server().start();
}
}

/*Client.java*/

public class Client {

public static final int V_PORT = 2013;
public Socket client_socket = null;
InputStream receive = null;
OutputStream send = null;
String msg="Hello Server";

public Client(){
byte b[] = new byte[100];
try{
InetAddress addr = InetAddress.getLocalHost();
client_socket = new Socket(addr, V_PORT);
System.out.println("\nConnected to port " + V_PORT);
System.out.println("\nConnected to InetAddress " + client_socket.getInetAddress().toString());
receive = client_socket.getInputStream();
receive.read(b);
System.out.println("\nString read from Server = "+b.toString());

send = client_socket.getOutputStream();
send.write(msg.getBytes());
System.out.println("\nMessage Written to the server");


}


catch(Exception e){
System.out.println("\nClient Error : "+e.toString());
}
}


public static void main(String args[]){
new Client();
}
}

Please help me to resolve this problem.

Thanx in advance.
Reply With Quote
Sponsored Links