F
Furtano
Gast
Nachdem ich die erste Eingabe an den Server schicke bekomme ich die Meldung:
ParkSockets.java
Client.java
Server.java
PHP:
Apr 29, 2012 9:24:21 PM parksockets.Client send
Schwerwiegend: null
java.net.SocketException: Socket is closed
Eingabe:
at java.net.Socket.setSoTimeout(Socket.java:1089)
at parksockets.Client.send(Client.java:57)
at parksockets.ParkSockets.main(ParkSockets.java:62)
ParkSockets.java
PHP:
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package parksockets;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.net.InetAddress;
import java.net.Socket;
import java.util.logging.Level;
import java.util.logging.Logger;
/**
*
* @author chris
*/
public class Client {
public int port;
public InputStream in;
public OutputStream out;
public Socket sock;
public Client() {
port = 6700;
}
public void startClient() {
try {
//InetAddress ip = InetAddress.getLocalHost();
sock = new Socket("127.0.0.1", port);
in = sock.getInputStream();
out = sock.getOutputStream();
// Verbindungen schliessen
in.close();
out.close();
sock.close();
} catch (Exception e) {
System.out.println(e.toString());
}
}
public void send (String command){
try {
// Timeout setzen
sock.setSoTimeout(300);
// Kommando an Server schicken
out.write(command.getBytes());
} catch (IOException ex) {
Logger.getLogger(Client.class.getName()).log(Level.SEVERE, null, ex);
}
}
}
Client.java
PHP:
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package parksockets;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.net.InetAddress;
import java.net.Socket;
import java.util.logging.Level;
import java.util.logging.Logger;
/**
*
* @author chris
*/
public class Client {
public int port;
public InputStream in;
public OutputStream out;
public Socket sock;
public Client() {
port = 6700;
}
public void startClient() {
try {
//InetAddress ip = InetAddress.getLocalHost();
sock = new Socket("127.0.0.1", port);
in = sock.getInputStream();
out = sock.getOutputStream();
// Verbindungen schliessen
in.close();
out.close();
sock.close();
} catch (Exception e) {
System.out.println(e.toString());
}
}
public void send (String command){
try {
// Timeout setzen
sock.setSoTimeout(300);
// Kommando an Server schicken
out.write(command.getBytes());
} catch (IOException ex) {
Logger.getLogger(Client.class.getName()).log(Level.SEVERE, null, ex);
}
}
}
Server.java
PHP:
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package parksockets;
import java.io.IOException;
import java.io.InputStream;
import java.io.InterruptedIOException;
import java.io.OutputStream;
import java.net.InetAddress;
import java.net.ServerSocket;
import java.net.Socket;
import java.util.logging.Level;
import java.util.logging.Logger;
/**
*
* @author chris
*/
public class Server extends Thread {
public int port;
private boolean stoprequestet;
public Server() {
port = 6700;
stoprequestet = false;
}
public synchronized void requestStop() {
stoprequestet = true;
}
public void run() {
try {
ServerSocket serversock = new ServerSocket(port);
int a = 0;
System.out.println(a);
// ab hier wartet der Server auf eine Verbindung
Socket useSocket = serversock.accept();
InputStream in = useSocket.getInputStream();
OutputStream out = useSocket.getOutputStream();
byte[] b = new byte[100];
int len;
try {
int i = 0;
while (!stoprequestet) {
try {
if ((len = in.read(b)) == -1) {
break;
}
System.out.write(b, 0, len);
} catch (InterruptedIOException e) {
}
}
} catch (IOException e) {
System.err.println(e.toString());
}
/*
* if (in.read(b) == "in"){
*
* }
*
*/
// Verbindungen schliessen
in.close();
out.close();
useSocket.close();
serversock.close();
} catch (IOException e) {
System.err.println(e.toString());
}
}
}