You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
45 lines
1.3 KiB
45 lines
1.3 KiB
/* Angelehnt an Kurose/Ross Computernetzwerke (bis 5e Java, ab 6e Python) */
|
|
|
|
package socket;
|
|
|
|
import java.io.*;
|
|
import java.net.*;
|
|
|
|
class Server2 {
|
|
public static void main(String argv[]) throws Exception {
|
|
int port = 36037;
|
|
|
|
ServerSocket serverSocket = new ServerSocket(port);
|
|
|
|
String message;
|
|
String modifiedMessage;
|
|
|
|
System.out.println("Server2 gestartet. Warte auf eingehende Requests...");
|
|
|
|
Socket connectionSocket = serverSocket.accept();
|
|
while (true) {
|
|
|
|
BufferedReader inFromClient = new BufferedReader(new InputStreamReader(connectionSocket.getInputStream()));
|
|
DataOutputStream outToClient = new DataOutputStream(connectionSocket.getOutputStream());
|
|
|
|
// Try/Catch hinzugefügt, nachdem bei Einsatz mit Amazon AWS (Healthcheck des ELB) message null war
|
|
try {
|
|
message = inFromClient.readLine();
|
|
if (message != null) {
|
|
System.out.println("Request von Client2 " + connectionSocket.getInetAddress() + ":" + connectionSocket.getPort() + " empfangen. Erzeuge und sende Antwort...");
|
|
|
|
if (message.equals("exit")) {
|
|
break;
|
|
}
|
|
|
|
modifiedMessage = message.toUpperCase() + '\n';
|
|
outToClient.writeBytes(modifiedMessage);
|
|
}
|
|
} catch (IOException ioe) {
|
|
ioe.printStackTrace();
|
|
}
|
|
}
|
|
connectionSocket.close();
|
|
serverSocket.close();
|
|
}
|
|
}
|