package net21; /** * William Smolinski * CISS 241 * Exercise 21-2: Server program to receive messages from a client using TCP/IP socket */ import java.io.*; import java.net.*; public class ex212server { private InetAddress host; private int port; public ex212server() { try { host = InetAddress.getLocalHost(); // use server computer as host port = 7777; // wait on port #7777 System.out.println("Server name is " + host.getHostName()); System.out.println("Server address is " + host); System.out.println("Port is " + port); } catch(UnknownHostException u) { u.printStackTrace(); } } public void run() { try { /* Create ServerSocket and Socket. Then create BufferedReader connected to Socket. Print where message is coming from and print the message. Create a PrintWriter connected to the Socket, then send back a message over the Socket that the message was received. Close all the Sockets. */ ServerSocket serverSocket = new ServerSocket(port); Socket incoming = serverSocket.accept(); BufferedReader br = new BufferedReader(new InputStreamReader(incoming.getInputStream())); PrintWriter pw = new PrintWriter(incoming.getOutputStream(), true); String str; if(!(str = br.readLine()).equals("")) { System.out.println("Message is coming from: " + incoming.getInetAddress()); System.out.println("Message: " + str); pw.println("Message received"); } incoming.close(); } catch(IOException e) { e.printStackTrace(); } } public static void main(String[] args) { ex212server s = new ex212server(); s.run(); } }