Bill,

I looked over your article on Scott's site.  It looks like only username and password 
are stored in cookies.  Have you used this method to store other user-scoped values?

It seems you could modify an existing app to write any important user-scoped values to 
cookies.  The login code could then use <@VARNAMES SCOPE="cookie"> to walk the user's 
saved values and re-assign them in user-scope.  (As long as you trust the cookie 
values.)

That would certainly get around problems with writing/reading vars to/from a file on 
the server.

- Jeff


>I think the persistent login method I outlined on Scott's site will do
>this for you. (Note that I do it a little differently now).
>
>Essentially, this method allows users vars to timeout without requiring
>user action by making the server handle the re-creation of user variables
>behind the scenes.  When the user authentication vars don't match the
>user authentication cookies, I redirect to the login process.  If there
>are authentication cookies, then the login proceeds without a user
>prompt.  If the cookies don't exist or don't authenticate properly a
>login prompt is presented.  In either case, upon re-authentication, all
>user variables are re-established and then a re-direct to the originating
>page is invoked.
>
>Of course to have this work, one must save all POSTARGs as user-variables
>(thanks, John,  for pointing me in this direction six months ago) and
>then use these user variables instead of POSTARGs.
>
>>The procautostart implementation is very clean and the nice thing about
>>it is that since it doesn't rely on cron (which at most runs once per
>>minute) it can be setup to check more frequently than that.  The example
>>I sent earlier will restart the Witango server within 5 seconds of the
>>server going down.
>>
>>Except for user sessions getting lost, you wouldn't even know the server
>>crashed.
>>
>>Which brings me to another question.  Is there a way to force the server
>>to cache user variables to disk (like it does when you do a clean
>>restart of the service) so that if I did that every minute or so, i'd
>>end up only loosing the users that haven't been on for that long?  Of
>>course I'd only do it if it wasn't too cpu intensive.
>>
>>/John
>>
>>Jeff Bohmer wrote:
>>
>>>There are a few more options.  In addition to procautostart, there is also
>>daemontools <http://cr.yp.to/daemontools.html>.
>>>
>>>I've been using the shell script below on OS X for a while.  I also use
>>STARTUPURL to call a TAF that emails me when the app server starts.
>>>
>>>- Jeff
>>>
>>>
>>>#!/bin/sh
>>>#
>>># watcher.sh
>>>#
>>># Start the Witango app server if it isn't running.
>>># If the variable dump file exists, deleted it before
>>># starting the app server.
>>>#
>>>. /etc/rc.common
>>>
>>>/usr/bin/top -w -l 1 | /usr/bin/grep witango >>
>>/Applications/Witango/Server/watcher.log
>>>
>>>x=`/bin/ps axc | /usr/bin/grep witango`
>>>if /bin/test -z "$x"
>>>then
>>>  ConsoleMessage "watcher.sh: Starting Witango App Server"
>>>  echo "`date` watcher.sh: Starting Witango App Server" >>
>>/Applications/Witango/Server/watcher.log
>>>  if /bin/test -e
>>/Applications/Witango/Server/configuration/variables.WitangoServer/Witango
>>Server.dump
>>>  then
>>>    rm
>>/Applications/Witango/Server/configuration/variables.WitangoServer/Witango
>>Server.dump
>>>  fi
>>>  /Library/StartupItems/Witango5/Witango5 start
>>>fi
>>>
>>>
>>>
>>>
>>>
>>>
>>>>The solution that I implemented on Linux should work on OSX... No need to
>use
>>cron though.
>>>>
>>>>the solution i used is called "procautostart"
>>>>
>>>>I downloaded the source and compiled it.  Since OSX is a flavor of Unix
>now,
>>you should be able to do the same.
>>>>
>>>>Check out this link, it explaines how the procautostart process works.
>>>>
>>>>http://www.linuxdocs.org/HOWTOs/Process-Monitor-HOWTO-2.html
>>>>
>>>>Once you get procautostart compiled and running on the simple test that
>they
>>provide, you can do something like this to your start witango script.
> >>>
>>>>#!/bin/bash
>>>>
>>>># Set up environment
>>>>umask 022
>>>>WITANGO_USER=witango ; export WITANGO_USER
>>>>WITANGO_PATH=/usr/local/witango ; export WITANGO_PATH
>>>>WITANGO_CONFIG=$WITANGO_PATH/configuration ; export WITANGO_CONFIG
>>>>JAVA_HOME=/usr/local/j2re1.4.1_03 ; export JAVA_HOME
>>>>
>>>>PATH=$WITANGO_PATH/bin:/bin:/usr/bin ; export PATH
>>>>LD_LIBRARY_PATH=$WITANGO_PATH:$JAVA_HOME/lib/i386/server:$JAVA_HOME/lib/i386/
>cl
>>ient:$JAVA_HOME/lib/i386:/usr/lib ; export LD_LIBRARY_PATH
>>>>CLASSPATH=$WITANGO_PATH/jdbc_drivers/JSQLConnect.jar:$WITANGO_PATH ; export
>>CLASSPATH
>>>>LC_ALL=en_US ; export LC_ALL
>>>>
>>>>cd /usr/local/witango
>>>>
>>>>/sbin/procautostart -n 5 -c "$WITANGO_PATH/witangod -u" nohup &
>>>>
>>>>
>>>>/John
>>>>
>>>>Michael Dittbrenner wrote:
>>>>
>>>>
>>>>
>>>>>I was wondering if anyone has and is willing to share code to have the
>witangod�
>>process restarted after it unexpectedly quits. We just upgraded to witango
>>5 for mac and the server seems to quit out, I was in the process of trying
>>to write a shell script to be called by crontab to see if the process is
>>running if not to start it. If someone has anything like this and is
>>willing to share I would greatly appreciate it.
>>>>>
>>>>>
>>>>>Mike D
>>>>>
>>>>>
>>>>>****************************************
>>>>>
>>>>>Educational Directories Unlimited, Inc.
>>>>>
>>>>>
>>>>>Michael Dittbrenner
>>>>>
>>>>>Programmer
>>>>>
>>>>>http://www.StudyAbroad.com <http://www.studyabroad.com/>
>>>>>
>>>>>http://www.GradSchools.com <http://www.gradschools.com/>
>>>>>
>>>>>A service of EDU, Inc... http://www.EDUdirectories.com
>><http://www.edudirectories.com/>
>>>>>
>>>>>A partner of EDU Internet Strategies:
>http://www.EDUInternetStrategies.com/
>><http://www.eduinternetstrategies.com/>
>>>>>
>>>>>
>>>>>[Phone]  610-499-9200
>>>>>
>>>>>[Fax]    610-499-9205
>>>>>
>>>>>[E-mail] [EMAIL PROTECTED]  or [EMAIL PROTECTED]
>>>>>
>>>>>
>>>
>>>
>>>
>>
>>________________________________________________________________________
>>TO UNSUBSCRIBE: Go to http://www.witango.com/developer/maillist.taf
>>
>
>
>Bill Conlon
>
>To the Point
>345 California Avenue Suite 2
>Palo Alto, CA 94306
>
>office: 650.327.2175
>fax:    650.329.8335
>mobile: 650.906.9929
>e-mail: mailto:[EMAIL PROTECTED]
>web:    http://www.tothept.com
>
>
>________________________________________________________________________
>TO UNSUBSCRIBE: Go to http://www.witango.com/developer/maillist.taf


--

Jeff Bohmer
VisionLink, Inc.
_________________________________
303.402.0170
www.visionlink.org
_________________________________
People. Tools. Change. Community.
________________________________________________________________________
TO UNSUBSCRIBE: Go to http://www.witango.com/developer/maillist.taf

Reply via email to