I'm trying to approach spring. There are other questions and answers about getting-started with spring. I don't want "something" to start, but the things that i must have.
The goal is very similar to a CRUD application.
Here's the list of my needs:
1) some "html" widget to manage tabular data and forms
the seamless integrated in spring as possible, yet capable of doing table pagination
2) the session management is not a concern since is covered in the spring reference
3) a basic authorization system. I find the container-managed security poorly integrated with form-based authentication. Spring states to have a simplified yet powerful security, and I just need to manage users and "power users" accounts. May I go the spring way?
4) i learned JPA2. I have very basic database access needs. Should I stay with JPA or hibernate is preferable?
5) what I don't need to start. web flow is quite a big item to learn. do I need it? AOP the same. do I need it?
however, to put something on the screen, my major concern is point 1.
A small-to-medium application, for example a little "address book application" yet will have a paginator. I need to know that I will be able to do that and that I won't need another switch in architecture.*
thanks in advance
* architecture switch example "well for that you'll need JSF that is better integrated with seam, and jsf does not handle file uploads that actually everyone use, so you have to put also ICEFaces that actually are better managed by maven that you currenty are not using..." neverending story
Take a look at Spring Roo. Issuing a command and seeing what it did is a great way to explore what a typical java-stack application does. For instance, tell it to set up persistence with hibernate, and take a look at the config files that are created. Tell it to create an MVC controller and take a look at the files created. It's really handy to at least give you some pointers as to what are the big building blocks. Also, if you learn Roo, it'll write 80% of your code for you!