Re: [webkit-dev] Browser issue with multiple tabulators

2009-05-24 Thread Sebastian Hennebrueder

Jeremy Orlow schrieb:

This is _exactly_ the use case SessionStorage was developed for.  :-)

On Fri, May 22, 2009 at 2:41 PM, Darin Adler  wrote:


I believe HTML 5’s sessionStorage is intended to resolve this issue.

   -- Darin


___
webkit-dev mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev




Hello,

thank you for the feedback but I only partly agree. The sessionStorage 
is client side but I was looking for a way to properly handle the 
'merged session' on the server.


Here is a part of what I posted on my blog:
http://www.laliluna.de/blog/2009/05/19/browser_feature_request.html

The client side storage stores the information on the client side and 
not on the server side. I was looking for a way on the server to find 
out, if a request comes from a different tabulator. The session storage 
could help me to find a better workaround. Below you can see Javascript 
code with the Jquery library, which basically creates a random id for a 
tabulator and adds this id to all forms on the screen. I could improve 
the script as well to append the tabulator id on all links as well.


 
$('form').append(tabId);
   });
  

But this is a workaround and in addition requires JavaScript on every 
page to add the tabulator id to everything which triggers a request to 
the server. As a consequence, my problem is not solved in a beautiful way.


What about an approach which links the client side sessionStorage to a 
serverSide storage? Each client side sessionStorage gets an ID assigned 
from the browser. This ID is send as request header to the server. This 
would allow to easily push data back and forward from client storage to 
server storage or to split data between client and server. On the server 
I could use Java code like the following to get the data for a specific 
tabulator.


 Map storages = 
session.getAttribute(“storageKey”);

 Storage tabStorage = storages.get(tabId);

If I close the browser, I could save the storage data on the server and 
next time, I log into my application, I can just fill up the client 
sessionStorage with the saved data.



--

Best Regards / Viele Gruesse

Sebastian Hennebrueder
---
http://www.laliluna.de
___
webkit-dev mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev


Re: [webkit-dev] Browser issue with multiple tabulators

2009-05-22 Thread Jeremy Orlow
This is _exactly_ the use case SessionStorage was developed for.  :-)

On Fri, May 22, 2009 at 2:41 PM, Darin Adler  wrote:

> I believe HTML 5’s sessionStorage is intended to resolve this issue.
>
>-- Darin
>
>
> ___
> webkit-dev mailing list
> [email protected]
> http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev
>
___
webkit-dev mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev


Re: [webkit-dev] Browser issue with multiple tabulators

2009-05-22 Thread Darin Adler

I believe HTML 5’s sessionStorage is intended to resolve this issue.

-- Darin

___
webkit-dev mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev


[webkit-dev] Browser issue with multiple tabulators

2009-05-22 Thread Sebastian Hennebrueder

Hello,

I am not sure if this is the right place to ask but I would like to make 
Safari developer aware of a problem in most web applications.


The web is intended to be stateless but web application naturally 
require stateful behaviour. The option to append the state (for example 
a shopping cart) as request parameter to every request is not practical. 
The common solution is to create a server session and to store the 
session ID as cookie or request parameter on the client.


The problem with this approach is that cookies are shared across all 
tabulators and as a consequence they share the same session. If I open 
an edit dialog for product foo in tabulator 1 and an edit dialog for 
product bar in tabulator 2 and submit changes in tabulator 1, I will 
actually change product bar instead of the original in tab 1 selected 'foo'.


A solution to this problem could be a tabulator id, which is a random id 
generated for every tabulator and passed as request header. The web 
developer can now safely allow to have multiple windows on the same 
application by slicing his session into tabulator contexts, to store 
data per tabulator id.


I described this in more details in my blog.

http://www.laliluna.de/blog/2009/05/19/browser_feature_request.html

I would appreciate your feedback on this idea. In case this was the 
wrong place to ask Safari developers, I apologize.


--

Best Regards / Viele Gruesse

Sebastian Hennebrueder
---
http://www.laliluna.de

___
webkit-dev mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev