|
From: Tim K. <tim...@vi...> - 2005-05-17 19:59:49
|
Hi everyone, I'm just throwing this out here to see what other people have to say. I can see from the list that there are a few developers actively working on portal solutions using Spring MVC. We are starting on our first project using this as well, and one of the issues I'm trying to figure out now is the matter of maintaining state in a portlet. In a typical CRUD example, if we have a portlet to display, edit and maange information about a certain object, like a Book. We'd have view, edit and delete functionality for example. In a typical non-portlet webapp, we could easily split those up across different servlets for fine-grained areas of responsibility. But it's not as simple with portlets, because there are limitations on what can be done, and essentially, all requests would need to go thru a single portlet configuration. So, it no longer become sufficient to configure a simple portlet controller for a portlet. There needs to be a way to maintain state and to delegate the request/response process to different types of controllers depending on the state. Like a View page would need to go thru a derivation of BaseCommandController, an Edit page would go thru SimpleFormController. And not to mention adding yet another dimension when considering portlet modes as well! This article at IBM Developerworks pretty much covers the same issue I am bringing up: http://www-106.ibm.com/developerworks/websphere/library/techarticles/0312_ha nis/hanis1.html I did look at Spring's WebFlow a few days ago to see if it could address our issue, but in the Webflow FAQ, it pretty much states that WebFlow should not be used in cases where the user will be using back-button, or indeterminate actions not within a strict flow. So that kinda leaves me back at square one. After some discussion with my co-worker, I would imagine that this is a common problem for any Spring portlet developer creating more than just simple portlet functionality. And that as Spring portlet support matures, this will be a more common issue for everyone. Hence this email to the list. I'm now wondering how some of you have addressed this problem, and whether there is a need for Spring's portlet support, to be in Spring 1.3 to include some way to configure and facilitate a state process, maybe even based on WebFlow's state machine - although I have only given WebFlow's state functionality a brief look. Thanks in advance, -tim |