Framework JavaScritp - Java

Hola buenas noches.

Estoy desarrollando una aplicación web java y estoy en busca de un framework para comunicar la capa de presentación con en servidor, para la capa de presentación necesito mucho dinamismo por lo que me resulta muy atractivo usar angularjs, ember, bootstrap o alguno de ellos pero para comunicar esta capa con el servidor he revisado varias opciones como String MVC, DWR, JSF aunque pero no terminan de agradarme estas ultimas asi que me gustaria consultarles para conocer si me recomiendan algun framework para esto, aclaro que no busco "NO PROGRAMAR" sino escribir un codigo compacto y legible. Me gustaria que este framework me permitiera enviar desde la capa de presentación un objeto JSON y poder recibirlo en un bean de java y viceversa, he hecho algo asi ya con Spring MVC y Jackson pero imagino que existe algo mejor que esto.

Espero me puedan orientar y les repito no busco dejar de programar sino hacer mejor codigo.
Saludos

Opciones de visualización de comentarios

Seleccione la forma que prefiera para mostrar los comentarios y haga clic en «Guardar las opciones» para activar los cambios.

Re: Framework JavaScritp - Java

Depende que busques.

Yo por mi parte te recomendaría utilizar JSF, ya que tienes varios "sabores" (primeFaces, iceFaces, myFaces), con una comunidad muy grande respaldando, sin mencionar que, además, es el estándar para aplicaciones web con Java EE.
Hacer componentes y acciones AJAX es sencillo y tu modelo de aplicación es más orientado a objetos, bastante cómodo una vez aprendiéndolo a usar. Si te gusta la idea de OOP pero JSF está lejos de convencerte, también puedes revisar Tapestry o Wicket, que tienen el enfoque a componentes, pero de otra forma.

Otra es que tengas una aplicación pura de back-end (quizá EJB o una aplicación de spark que únicamente procese peticiones y regrese una respuesta) y una aplicación con un cliente cómo lo sugieres con AngularJS o EmberJS. Sin embargo creo que la mejor opción a ello sería utilizar algo cómo Cappuccino para la presentación.

Otra es seguir algo cómo Play! que abarca del modelo a la vista, pero si se sale de la línea convencional de programación en Java.

Por último, SpringMVC a mí me parece algo increíble, puedes pegarle Thymeleaf o quedarte con JSP de toda la vida y utilizar librerías JS/CSS que te den un enfoque un tanto más "agnóstico" (o sea, complementar con bootstrap, jQuery).

¡Saludos!