Like extending ERXWOContext with eg:
public String componentActionURL() {
String url = super.componentActionURL();
if(page() instanceof ERXComponentActionRedirector.Restorable) {
ERXComponentActionRedirector.Restorable r =
(ERXComponentActionRedirector.Restorable)page();
String state = r.urlForCurrentState();
// mod the url to return sth useful by both /wo/ and /wa/ handlers,
say
url += "?wourl=" + URLEncoder.encode(state);
// or (roughly)
url = url.replaceAll("/wo/(.*)", "/wa/" + state.replaceAll(".*?/wa/
(.*)", "$1") + "&wocid=$1");
// and mod the DA or component handler to recognize the new
params
}
return url;
}
Of course you still won't get backtracking and stuff, but a session
timeout would be recovered from. It's not perfect, just pretty cheap
and easy to do, in particular with ERD2W. And no extra store required...
Cheers, Anjo
Am 14.11.2007 um 22:33 schrieb Anjo Krank:
Always the perfectionist... it's certainly better than just saying
"we terminated you session because we fucked it, please log in
again" :) And you could mark such events and reconstruct at least
the start page, sth like ERXComponentActionRedirector does.
Cheers, Anjo
Am 14.11.2007 um 22:27 schrieb Mike Schrag:
What does it end up looking like to an end-user? My big concern
with this was dealing with backtrack cache ... If someone is in
the middle of filling out, for instance, a multipage form (or
anything that is stateful), when their instance goes down, what
was their experience? I presume it was that you would reload that
the particular user was logged in, but you must have to dump them
back to a main menu or something?
ms
On Nov 14, 2007, at 4:21 PM, Alan Ward wrote:
We did it with memcached. It's not "real" mobile sessions but
it's enough for our purposes. We distinguish
between "persistent" session data and transient stuff. The
persistent stuff goes in an NSDictionary that we
shove into memcached in Session.sleep(). Then in Session.awake()
if we find that we've switched instances
we pull the NSDictionary from memcached and rehydrate the
transient data.
Alan
On Nov 14, 2007, at 2:14 PM, Anjo Krank wrote:
Sound like a job for memcached...
Am 14.11.2007 um 22:08 schrieb Guido Neitzer:
I experimented with that a little bit a while ago and it seemed
just ugly and way too much work for "evening programming". I
ended up with something similar to a dictionary that got
serialized to the database and an id for it in a cookie, but
that was just a simple workaround, not real session management.
It worked quite nice though ...
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Webobjects-deploy mailing list (Webobjects-
[EMAIL PROTECTED])
Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/webobjects-deploy/award%
40apple.com
This email sent to [EMAIL PROTECTED]
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Webobjects-deploy mailing list (Webobjects-
[EMAIL PROTECTED])
Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/webobjects-deploy/mschrag%
40mdimension.com
This email sent to [EMAIL PROTECTED]
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Webobjects-deploy mailing list (Webobjects-
[EMAIL PROTECTED])
Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/webobjects-deploy/krank%
40logicunited.com
This email sent to [EMAIL PROTECTED]
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Webobjects-deploy mailing list (Webobjects-
[EMAIL PROTECTED])
Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/webobjects-deploy/krank%
40logicunited.com
This email sent to [EMAIL PROTECTED]
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Webobjects-deploy mailing list ([email protected])
Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/webobjects-deploy/archive%40mail-archive.com
This email sent to [EMAIL PROTECTED]