<snip>
And then he has no more worries as to getting a bloated session, as the
session gets trimmed of workflow objects as soon as user goes to any screen
which is not part of work flow.
</snip>

Unless of course the user simply closes the window. :-(

If the user has multiple windows open all sharing a session and does
different things in different windows things get really fun.

Im not sure if the livinglogic workflow extension has anything to handle
this as I havent used it, but I have some familiarity with some of the
issues involved.

But in my app I had to essentially manage mini-sessions within sessions (I
call them Operation Contexts) and that involved using url rewriting to pass
around the id of the OperationContexts so that Actions could identify which
OperationContext a request was associated with. (The OperationContexts
themselves being essentially an object with Map and some other info. (Or in
fact a stack of Maps (to support some other requirements such as nav
stacks), but thats starting to get off topic...))

I had overridden the RequestProcessor to allow ActionForms to be scoped to
OperationContexts as well which was quite useful. Due to the nature of many
of the forms in the app (things like any number of file uploads to a single
field and slow access to persistence, and tab paney type stuff that had to
work in Netscrap6) we really needed to use session scoped forms, but we also
needed to support multiple windows open on html forms for different
instances of the same record type (and thus same action and form mapping).
Doing this in a frameworky way allows managing this to be abstracted away
and so the code in the Actions (& form) can concentrate on the task at hand
rather than on session management.

As for the session management for this ... what a nightmare (bucket loads of
javascript, popups submitting to the server to let it know a window closed,
some filters, vast amounts of url rewriting). There are so many edge
cases... (and its not actually possible to catch them all) - nasty stuff. If
you can find a framework to manage this chaos for you  then use it! Its not
something you want to do yourself unless you really have to...

btw: Ive posted about this Operation Context stuff before a few times so you
can search the archive if you want more info.

-----Original Message-----
From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED]
Sent: Thursday, 12 February 2004 21:49
To: [EMAIL PROTECTED]; [EMAIL PROTECTED]
Subject: RE: [OT] - Request against Session


The whole point is there is no concept of a Workflow scope in Servlet API
and if you want to share objects , you have to put them in session.And then
clearing them is not always easy, as you will never be clear when user may
leave the workflow scope.And you have to code for it in every action.

What this extension does is to leave all those details to framwrork, and the
programmer just has to COnfigure the actions ,saying that they belong to a
workflow.And then he has no more worries as to getting a bloated session, as
the session gets trimmed of workflow objects as soon as user goes to any
screen which is not part of work flow.

HTH.
regards,
Shirish

-----Original Message-----
From: Robert Nocera [mailto:[EMAIL PROTECTED]
Sent: Thursday, February 12, 2004 2:36 PM
To: 'Struts Users Mailing List'
Subject: RE: [OT] - Request against Session



This is probably even more off topic, but I've seen this mentioned before.
>From what I can tell of their description of this "workflow" scope, it looks
like it may be helpful as far as ease of use goes, but it doesn't offer any
real technical benefit over the use of hidden form fields or sessions, in
fact, the underlying implementation has to be something passing parameters
of using the session, there just isn't any alternative in any compliant
application servers.

As far as the objects being cleared when the user leaves the workflow, how
is that any different the using the session correctly?  If the user goes on
to another page that is not part of your current "workflow" you can clear
those objects or you wait until the user's session times out -- those are
really the only two options.

-Rob

-----Original Message-----
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]

Sent: Thursday, February 12, 2004 4:21 AM
To: [EMAIL PROTECTED]
Subject: RE: [OT] - Request against Session

Hi Guys,
I think the issue over here is, in such cases we need a new scope(workflow
scope).The existing scopes(request/session) do not suffice in such cases.

...
The session scope can be used but it may not be cleared.So there has to be a
solution at architecture level.And the struts workflow extension
http://www.livinglogic.de/Struts/introduction.html
...


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to