Depende de lo que quieras hacer (como para la mayoría de las herramientas de todos modos).
Si desea profundizar en los detalles del desarrollo web, use muchos trucos (a veces diferentes) del entorno del navegador, y las funciones más nuevas de ellos, tenga las agallas para luchar con pequeños trucos que hacen que su aplicación web 'se vea genial', GWT siempre estará en tu camino: si tienes el tiempo y la experiencia, puedes hacer todo y más con tus manos. Y sí, hay muchos otros juegos de herramientas que lo ayudarán a programar en JavaScript.
Sin embargo, si desea hacer una GUI "no tan elegante", pero estable para su aplicación que "debería", y en la mayoría de los casos realmente hace lo mismo, y se ve igual en varios navegadores sin trucos, GWT es una buena opción. elección, lo mejor que sé. Explicación: Google definitivamente está motivado para mantenerlo sincronizado con la mayoría de los navegadores y las tecnologías más recientes, y definitivamente tiene suficientes recursos para hacerlo. Sí, te adhieres a otro gigante en lugar de hacer tus propias cosas. Pregunta: ¿cuál es tu trabajo? Para proporcionar el mismo servicio a la furia más amplia de usuarios a través de una interfaz web con el menor esfuerzo, o crear un portal web brillante y excepcional que tenga las mejores características en las plataformas más nuevas.
Motivo +1: creo que es beneficioso mantener su aplicación en una base de código y en un idioma. Podrías hacer un buen truco en los scripts de la base de datos, pero te encierras en ese servidor de db. Puedes hacer cosas externas con scripts de shell o archivos por lotes, pero te encierras en el sistema operativo. Puede implementar parte de la lógica del controlador en JavaScript para proporcionar una interfaz de cliente enriquecida en un navegador, pero puede encerrarse en un navegador. Para todos los casos, no es fácil mantenerlos sincronizados con los requisitos y la estructura de datos de la aplicación central (y quizás el más difícil es el entorno de herramientas de navegador + JS en constante cambio). Estoy convencido de que si la aplicación principal está en Java, todas las cosas deberían estar en Java, con una fracción muy pequeña de casos en los que realmente tienes que poner una parte de la lógica en otro entorno.
Elegí GWT debido a mis respuestas a las preguntas anteriores, y hace lo que quería que hiciera: en aproximadamente 2 semanas después de la instalación tuve una interfaz web aceptable para un sistema de monitoreo de servidor interno, aunque tenía experiencia con Swing. (No, no he usado el aspecto predeterminado y sí, he usado CSS y clases para presentar información lógica :-))
Verifique sus tareas actuales y planificadas, y elija la herramienta adecuada para ellas.