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