/* server.java a simple stream server */ import java.net.*; import java.io.*; public class server { public static void main(String[] args) throws IOException { ServerSocket serverSocket = null; int port = 0; if (args.length != 1) { System.err.println( "usage java server port"); System.exit(0); } try { port = Integer.parseInt(args[0]); } catch (NumberFormatException e) { System.err.println("Arg was not a number"); System.exit(0); } try { serverSocket = new ServerSocket(port); } catch (IOException e) { System.err.println("Error opening socket:" + e); System.exit(0); } Socket clientSocket = null; try { clientSocket = serverSocket.accept(); } catch (IOException e) { System.err.println("Accept failed: + e"); System.exit(0); } System.out.println("A connection has been accepted from " + clientSocket.getInetAddress().getHostName()); PrintWriter out = new PrintWriter(clientSocket.getOutputStream(), true); BufferedReader in = new BufferedReader( new InputStreamReader( clientSocket.getInputStream())); char buffer[] = new char[4096]; int n; n = in.read(buffer,0,4096); if (n > 0) { String s = new String(buffer,0,n); System.out.println("Read " + n + " chars from the socket: " + s); } out.println("I got your message"); out.close(); in.close(); clientSocket.close(); serverSocket.close(); } }