Hace poco empece con java y estoy por armar una aplicacion medianamente sencilla ( algunos ABM, estadisticas, etc ) que seria usada desde algunos clientes. Mis dos opciones serian:
1) Armar tanto cliente como servidor en java, conectarlos por TCP y elaborando el entorno grafico en swing o
2) Armar en cliente en jsp, conectarlos al server por http.
Ambas aplicando un patron MVC para su diseño. La segunda opcion hasta el momento jamas la probe, no se si tiene el mismo alcance de posibilidades que la primera, si es mejor o da lo mismo tanto una u otra.