On Tue, 2008-03-18 at 18:24 +0100, Thomas Fischer wrote:
> In an JSF 1.2 application I'd like to have some "global service" pages,
> which which can be accessed from different parts of the application and
> deliever their result back to that part where it came from.
> 
> This is a bit abstract, so here is an example: In different places of the
> application, there is a need to search a user in a user database. The
> process of selecting the user is the same each time, e.g. entering the
> user's name and department in a search form. So on each of these pages,
> there should be a "select user" button, which opens a new page where the
> search data is read and the search is performed. Of course, the result of
> the search needs to be returned to the calling page (i.e. its controller)
> somehow. There might be different "select user" buttons on one single page
> (for different roles, e.g. "select administrator", "select technical
> writer" etc.)
> 
> This is problematic because the "select user" page does not know what to do
> with the result, and how to return control to the calling page so that the
> calling page can fetch the result and take appropriate action.
> 
> I have a solution which I consider quite a hack: The original page stores
> an ELExpression in the session, which is to be evaluated by the "search
> user page" controller after it has stored the selected users in the
> session. The outcome of the ELExpression selects a navigation rule which
> directs back to the original point. The ELExpression in the session stores
> the user from the session in the appropriate place of the calling page's
> controller.
> What I do not like about this solution:
> - Defining and calling an EL programatically is complicated and not easily
> understandable. I'd be happy if I would not have to do this.
> What I like about the solution:
> -  The "search user" page does not need to know where to store the result.
> It provides a "service" and does not care from where it is called.
> 
> So my question is: Can anyone think of an alternative approach to this,
> which preserves the "service" idea ?

I haven't done this myself, but believe that there are a few solutions
to this issue.

Try searching for "trinidad page flow", "shale dialog", "spring
webflow". I suspect that Seam has something for this too.

Regards,
Simon

Reply via email to