I started my adventure with Spring MVC framework. My current background is rather Adobe CQ5 applications. Most of the articles, tutorials and books that I read cover simple examples of views and then they switch to db integrations and so on.
I would like to create simple application which will be a frontend for my backend OSGI based application. So it is important that framework works on OSGI. (I managed to run Spring MVC on Apache Felix - Karaf)
So, I would like to have components shared across pages like:
- autopopulated, dynamic menu
- bar, which behaves differently depending on who is logged in
- footer & header (also can be dynamic)
and a couple of page specific components. I know that application I mentioned isn't complex at all, but it's just an example.
In my opinion, each of these elements should have separate model, view and controller. These components should have access to some kind of session. And I don't see a way of doing it in Spring MVC.
Is Spring MVC good solution for what I want to accomplish? I reached to the point, where it seems that I made a bad decision. I feel a bit cheated, since there are lot of examples of Spring MVC doing web pages (like PetClinic) but it seems that doing more complex stuff would be a pain.
I have two additional questions. What is Spring MVC good for? Do you have any suggestions on what framework should I look for instead?