Visualizzazione dei risultati da 1 a 2 su 2
  1. #1
    Utente di HTML.it
    Registrato dal
    Jan 2003
    Messaggi
    4

    [java] netbeans 6.0.1 & socket...

    Ciao a tutti!!!
    Sto implementando un'applicazione in Java mediante l'utilizzo di Netbeans...
    Essendo un'applicazione client-server, il server si blocca nel momento in cui utilizzo i Socket.. Xò se eseguo lo stesso programma, senza l'uso della grafica creata con netbeans, non crea problemi e funziona perfettamente.

    Questo è il codice dell'azione che crea i socket e la comunicazione (lato server):

    codice:
        public void setOnline() throws Exception{
            String usernameClient="";
            String passwordClient="";
            ServerSocket welcomeSocket=new ServerSocket(Integer.parseInt(portLabel.getText()));
            connectionButton.setText("Interrompi Server");
            //eventTextArea.setText(eventTextArea.getText() + "Server pronto per stabilire connessioni.");
            statusLabel.setText("Ready.");
            while (true){
                Socket connectionSocket=welcomeSocket.accept();
                //eventTextArea.setText(eventTextArea.getText() + "\nIl client ha stabilito la connessione.");
                BufferedReader inFromClient = new BufferedReader(new InputStreamReader(connectionSocket.getInputStream()));
                DataOutputStream outToClient=new DataOutputStream(connectionSocket.getOutputStream());
                usernameClient=inFromClient.readLine();
                passwordClient=inFromClient.readLine();
                //boolean connect=false;
                if (username.equals(usernameClient) && password.equals(passwordClient)){
                    //eventTextArea.setText(eventTextArea.getText() + "\nha effettuato con successo l'accesso.");
                    outToClient.writeBytes("LOGGED\n");
                    //connect=true;
                }
                else{
                    //eventTextArea.setText(eventTextArea.getText() + "\nusername o password errati.\n");
                    outToClient.writeBytes("ERROR\n");
                }
                connectionSocket.close();
                /*while (connect){
                    String input=inFromClient.readLine();
                    if (input.equals("exit")){
                        connectionSocket.close();
                        eventTextArea.setText(eventTextArea.getText() + "\nIl client si è disconnesso.");
                        connect=false;
                    }
                }*/
            }
        }
    Precisamente la GUI smette di "aggiornarsi" (il programma risulta bloccato ma continua a funzionare come server) alla seguente riga (subito dopo il while):
    Socket connectionSocket=welcomeSocket.accept();

    Qualcuno saprebbe aiutarmi?
    Mi va bene qualsiasi soluzione... è un progetto che devo portare alla Maturità... non vorrei portare mezzo progetto fatto in grafica e mezzo no

    Attento suggerimenti...

    Andrea.

    Sorgenti completi:
    http://www.mediafire.com/?xwmvtmm2x05

  2. #2
    Utente di HTML.it
    Registrato dal
    Jun 2003
    Messaggi
    136
    Ho fatto due errori:
    1. ho postato con il nick di mio padre (lol)
    2. ho visto ora che c'è il subforum per java -.- se un mod sposta il thread sarebbe meglio

    Scusate!!!

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.