There's a very simple solution. What you're looking for is "browser branding". Randal Schwartz presents a very good example of this at his column on web techniques. http://www.stonehenge.com/merlyn/WebTechniques/col61.html
Basically, your issue is that each of the frames is a separate webpage, meaning they are different threads of execution. So, they each need their own session id. CGI::Session correctly identifies this. But, you need to have both those session IDs correspond to the same user. So, instead of a one-stage process, you need a two-stage process. As for the 13,000 desktops ... what on earth does that have to do with anything? Since this is a webapp, it lives on the server, right? So, it could roll out to 13,000,000,000,000 desktops and you shouldn't care. -----Original Message----- From: Ron Savage [mailto:[EMAIL PROTECTED] Sent: Monday, July 05, 2004 12:11 AM To: Perl - CGI-Application Subject: Frames and CGI::Sessions Hi Folks I have a setup using CGI::App which starts like this in the HTML: <frame name="left" src="http://127.0.0.1/cgi-bin/left.cgi"> <frame name="right" src="http://127.0.0.1/cgi-bin/right.cgi"> The frames have worked out superbly, despite the fact I normally abstain from such practices... If a solution to the problem below requires abandoning frames, then so be it, but I won't abandon them lightly. The 2 scripts are the same, just differing in the PARAMS: My::Application -> new(PARAMS => {target => 'left'}) -> run(); My::Application -> new(PARAMS => {target => 'right'}) -> run(); The problem is that each script creates its own CGI::Session session, so that when a user operating in the right frame sets options, the session in the left frame is unaware of the changed options. How do I let the left session become aware of the right session, given the constaints: o The code must run identically under Linux and Windows, so I'm reluctant to adopt a solution requiring fork; o The code is being rolled out to 13,000 desktops, which influences how many people could theoretically start up the scripts at more-or-less the same time. See below for a discussion of client IP addresses, which would otherwise be pressed in to use here. The reason IP addresses may not be enough to distinguish clients, is that the last time I tested IP addresses via Apache's log (in a different environment), all requests were logged with the (same) router's IP address, rather than the client's IP address. -- Ron Savage, [EMAIL PROTECTED] on 5/07/2004. Room EF 312 Deakin University, 221 Burwood Highway, Burwood, VIC 3125, Australia Phone: +61-3-9251 7067, Fax: +61-3-9251 7604 http://www.deakin.edu.au/~rsav CONFIDENTIALITY NOTICE: The information in this electronic transmission and any documents accompanying it may contain confidential information belonging to the sender, which is legally privileged. The information is intended only for the use of the individual or entities named above. If you are not the intended recipient, you are hereby notified that any disclosure, copying, distribution or the taking of any action in reliance on the contents of this information is strictly prohibited. If you have received this transmission in error, please destroy the message in its entirety. --------------------------------------------------------------------- Web Archive: http://www.mail-archive.com/[EMAIL PROTECTED]/ http://marc.theaimsgroup.com/?l=cgiapp&r=1&w=2 To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
