Какие инструменты выбрать для создания web-приложения на java?
AngularJS + UI Bootstrap + Spring + Hibernate.
Формировать и управлять сложными формами на стороне клиента гораздо легче, чем формировать их на стороне сервера, а потом навешивать на них кучу лапшеобразного JavaScript/jQuery кода.
AngularJS полностью берёт на себя пользовательский интерфейс, а Spring работает как RESTful сервис.
Вы не рассмотрели еще как минимум один вариант. Есть такой замечательный Java/Groovy framework, Grails. Вдохновлен Rails, jQuery - по умолчанию, последние версии (2.3) сделаны для максимального удобства работы с Rest, Angularjs на ура привязывается. Spring + Hibernate из коробки. Настоятельно рекомендую попробовать. Groovy рассматривайте даже как преимущество, если имеете большой опыт на Java, на Groovy писать будете через пару часов без проблем.Выбор в основном состоит средстве для реализации пользовательского интерфейса.
Boostrap + Angular выглядит очень хорошим решением для быстрого прототипирования.
А в чем, собственно проблема? Как фреймворк, который в основном ориентирован на backend (кроме Vaadin, насколько я знаю), вам поможет сделать frontend? Поясните, если не сложно.