Typically, the value so-called UI components lies in how they keep track of user interactions on the server side by integrating with a stateful framework.
Since you have decided to go for a request oriented framework, it would make more sense to use some well-known client-side JavaScript libraries instead. Popular choices include:
- Backbone.js – an MVC foundation for user interfaces
- jQuery UI for some premade widgets (calendars, etc.)
- If you want to go down a more complex route, but with a more desktop-like feel, Sproutcore
- Finally, if you wish to avoid JavaScript, you can useGoogle Web Toolkit, which compiles Java to JavaScript and is supposed to have good integration with Spring.
Personally, if I don’t need a lot of standard prebuilt widgets, I like Backbone.js + underscore.js + jQuery. I don’t like Google Web Toolkit since it feels like writing a pidgin JavaScript, and at that point I prefer to write JavaScript directly.