ciao a tutti,
ho un problemino che spero voi riusciate a risolvermi...
sto creando un server ed una interfaccia grafica del server (guiserver). L'interfaccia è costruita con tre bottoni, uno per avviare il server, uno per disattivarlo ed uno per chiudere la finestra e l'applicazione. Gli ultimi due bottoni funzionano perfettamente, il problema è il primo. Infatti avvia il server, ma questo rimane in attesa perenne di client e blocca la finestra. Qui sotto metto il codice:
guiserver.java
public class avviamento implements ActionListener{
public void actionPerformed (ActionEvent ae){
try{
server.activate();
avvioserver.setEnabled(false);
spegnimentoserver.setEnabled(true);
}
catch(IOException ioe){
display.append("C'è stato un errore nell'avviamento server");
}
}
}
server.java
public void activate() throws IOException {
try{
serverSocket=new ServerSocket(port);
GUIServer.display.append("Il server è stato avviato\n");
}
catch (IOException ioe){
System.out.println("Non posso ascoltare sulla porta "+porta+"\n");
System.exit(0);
}
try{
while (listening){
Socket socketcorrente=serverSocket.accept();
GUIServer.display.append("E' arrivato un nuovo client\n");
InputStream is = socketcorrente.getInputStream();
OutputStream os = socketcorrente.getOutputStream();
DataInputStream inStream = new DataInputStream(is);
DataOutputStream outStream = new DataOutputStream(os);
Serverthread st=new Serverthread(inStream,outStream);
st.start();
}
}
catch (Exception e){
GUIServer.display.append("Errore");
}
}
Avete idee? Sono due giorni che ci penso e non ho risolto niente