La questione ‘banlist’

13 05 2008

Negli ultimi giorni stò riscontrando un problema, che non riesco a risolvere, nella scrittura del comando ‘banlist’ il quale dovrà provvedere a stampare a video la lista degli utenti bannati (contenuta in un Vector), il problema è che mi causa un’eccezione che fà crashare tutto il programma quando non-connesso e lo fà bloccare quando connesso:
[hawake@FallenStar]$ banlist
Exception in thread "main" java.lang.NumberFormatException: For input string: "i
st"
at java.lang.NumberFormatException.forInputString(Unknown Source)
at java.lang.Integer.parseInt(Unknown Source)
at java.lang.Integer.valueOf(Unknown Source)
at javalightserver.ShellThread.run(ShellThread.java:216)
at javalightserver.Main.main(Main.java:23)

Il punto cruciale della questione stà nel fatto che il codice è praticamente IDENTICO a quello del comando ‘listusers’, il quale funziona anche con il server off-line senza dare alcuna eccezione, con il solo cambiamento della variabile che si riferisce al Vector degli utenti bannati. Ecco i due pezzi di codice:
LISTUSERS:
} else if (comando.equalsIgnoreCase("listusers")) {
if (JLServer.getSslStatus() == false) {
System.out.println("Total client connected: " + ServerThread.getUsersSize());
for (int i = 0; i < ServerThread.getUsersSize(); i++)
System.out.println("Found: " + ServerThread.getUser(i));
} else if (JLServer.getSslStatus() == true) {
System.out.println("Total client connected: " + SecureServerThread.getUsersSize());
for (int i = 0; i < SecureServerThread.getUsersSize(); i++)
System.out.println("Found: " + SecureServerThread.getUser(i));
}


BANLIST:
} else if (comando.equalsIgnoreCase("banlist")) {
if (JLServer.getSslStatus() == false) {
System.out.println("Total clients banned: " + ServerThread.getBannedUsersSize());
for (int i = 0; i < ServerThread.getBannedUsersSize(); i++)
System.out.println("Found: " + ServerThread.getBannedUser(i));
} else if (JLServer.getSslStatus() == true) {
System.out.println("Total clients banned: " + SecureServerThread.banned.size());
for (int i = 0; i < SecureServerThread.getBannedUsersSize(); i++)
System.out.println("Found: " + SecureServerThread.getBannedUser(i));
}
}

DOVE SBAGLIO?


Azioni

Information

One response

11 06 2008
Buon compleanno JavaLightServer! « Hawake’s Blog

[…] dispiace molto il fatto che non possa rilasciare la nuova versione a causa di quei due problemi, mi stò impegnando nella loro risoluzione (potete constatarlo dallo […]

Lascia un commento

Effettua il login con uno di questi metodi per inviare il tuo commento:

Logo WordPress.com

Stai commentando usando il tuo account WordPress.com. Chiudi sessione / Modifica )

Foto Twitter

Stai commentando usando il tuo account Twitter. Chiudi sessione / Modifica )

Foto di Facebook

Stai commentando usando il tuo account Facebook. Chiudi sessione / Modifica )

Google+ photo

Stai commentando usando il tuo account Google+. Chiudi sessione / Modifica )

Connessione a %s...




%d blogger cliccano Mi Piace per questo: