Se vuoi realizzare il server non come servlet, ma come applicazione stand-alone, puoi guardare quella molto semplice che ho realizzato io :
http://battlehorse.supereva.it
sezione JLibrary
Il server e' il classico thread che ascolta ripetutamente su una porta e apre nuovi socket ogni volta che arriva un tentativo di connessione.
All'arrivo di un messaggio da parte di un client lo passa a tutti gli altri client connessi.