Depende de lo que quieras hacer, pero te dire que hasta los puedes combinar.
Yo he hecho aplicaciones con Tomcat-java-webservices (lógica) y los clientes son programas hechos en Delphi que consumen los webservices.
Ventajas de esto: las interfaces gráficas son más fáciles de desarrollar en Delphi y son mucho más rápidas. La lógica se puede hacer bastante bien con java, es más creo que es excelente lenguaje para la lógica de una aplicación.
Desventas: el cliente solo funciona en Windows (pero se puede hacer un cliente en cualquier cosa que consuma webservices
). Es necesario usar 2 lenguajes (puede llegar a ser una desventaja).
Saludos