On 5/27/05, Werner Punz <[EMAIL PROTECTED]> wrote:
> Sean Schofield wrote:
> > FYI there is some really cool stuff going on with dialogs in Struts
> > Shale right now.  Its all built on top of JSF and there are some
> > "nightly" examples you can download from Craig's website.
> >
> > Of course you can accomplish this without Shale (see Martin's
> > suggestions) but Shale provides a nice "standard" way of solving the
> > "dialog problem."
> >
> Well I checked shale yesterday, it looks really nice, but I have one
> gripe with it, Callahan introduces yet another xml syntax for the page
> flow, which really is totally redundant because the pageflow already is
> covered in the faces-config description.
> 
> The better approach would be to use some kind of dialog marker tag,
> which marks the dialog boundaries, and let JSF keep the page flow.
> JSF has way too many artefacts scattered around the filesystem already
> (a huge design mistake, it inherited from Struts), we dont neet yet
> another artefact, and even one, which ist totally redundant.
> 
> 

Not really redundant, in at least a couple of areas:

* JSF 1.x doesn't have any notion of mapping to an action state;
  it only knows about view states.

* JSF 1.x maps outcomes to new (view) states globally per application,
  which means you cannot reuse the same view in more than one dialog.

* Besides the "global" restriction, JSF 1.x doesn't have any support for
  a "dialog scope" (longer than a request, shorter than a session) -- you
  have to do all that kind of state management by yourself.

None of these "limitations" of JSF 1.x should really be that
surprising; the focus was on creating a view tier component API. 
Shale, on the other hand, is about creating a controller tier API that
is synergistic with JSF's basic controller capabilities, rather than
treating it as simply a custom tag library (like the Struts HTML
tags).

If the ideas in Shale's dialog management end up in JSF 2.0 (which
doesn't seem unlikely to *me*, but that will be up to the JSF 2.0
expert group), then great.  In the mean time, the ability to script a
dialog, with both action and view states, and to build a tool to
assist a user in graphically assembling such a dialog, then reusing it
as a black box, is pretty helpful.

Craig

Reply via email to