Thanks guys for the help.
Thanks for bringing the idea forward Craig. 

On Thu, 14 Oct 2004 11:40:49 -0700, Craig McClanahan <[EMAIL PROTECTED]> wrote:
> You should note that the standard struts-example webapp does exactly
> this ... the "database" is represented as an XML file that is
> initialzed in the init() method of a plugin, and finalized in the
> destroy() method.
> 
> Craig
> 
> 
> On Thu, 14 Oct 2004 09:43:36 -0700, Wiebe de Jong <[EMAIL PROTECTED]> wrote:
> > If you don't have access to a database, then creating some kind of in-memory
> 
> 
> > database and storing it in the servlet context is a good alternative. Use a
> > Struts plugin for setup and cleanup of whatever you use.
> >
> > One thing you will have to be careful of is using up all your memory. If you
> > are storing token/timestamp/status for a large number of users, it will add
> > up.
> >
> > Wiebe
> >
> >
> >
> > -----Original Message-----
> > From: Andrew Hill [mailto:[EMAIL PROTECTED]
> > Sent: Wednesday, October 13, 2004 8:23 PM
> > To: Struts Users Mailing List
> > Subject: Re: sending/maintaning a download link
> >
> > It wouldnt survive a server restart, but this may well be acceptable if
> > you dont expect the server to restart very often and your token expiry
> > is only a day or two and its easy to get another token if needs be.
> >
> > Im not sure what the deal is with stuff added to servlet context after
> > startup in a clustered environment however. If your in a cluster you
> > would need to check up on that in the docs as it may not be available to
> > all servers in the cluster?
> >
> > Richard wrote:
> >
> > > Hi Wiebe,
> > >
> > > What if im not going to use any database? can I just store this in the
> > > servlet context?
> > >
> > > Thanks
> > > Richard
> > >
> > >
> > > On Wed, 13 Oct 2004 10:12:38 -0700, Wiebe de Jong <[EMAIL PROTECTED]> wrote:
> > >
> > >>The only way to make a link go away is to make it dynamic. That means that
> > >>the link you email will have to be to an action that returns the file.
> > There
> > >>have been quite a few threads recently on this mailing list about how to
> > get
> > >>actions to return files, including .pdf and .csv, so I won't cover that
> > >>here.
> > >>
> > >>Here is a list of steps for how I would go about implementing this
> > feature:
> > >>
> > >>1 - generate a unique token and store it in the database with a
> > >>timestamp=now() and status=valid.
> > >>2 - add this token to the url you send in the email:
> > >>http://www.mycompany.com/myapp/download.do?token=123abc
> > >>3 - when the user calls the action via the supplied url, the action checks
> > >>the database to see if the token is still valid.
> > >>4 - if token is valid, send the file, and then invalidate the token so it
> > >>can't be used again. (status=used)
> > >>5 - if token not valid, display a message to the user telling them that
> > the
> > >>link has either expired or already been used.
> > >>6 - have a background process run periodically (1 per day, every hour,
> > >>whatever) that checks the timestamps in the database and expires tokens if
> > >>the timestamp is more than 24 hours old. (status=expired)
> > >>
> > >>The background process can be run via Quartz, which was also covered
> > >>recently in this list.
> > >>
> > >>Wiebe de Jong
> > >>
> > >>
> > >>
> > >>-----Original Message-----
> > >>From: Richard [mailto:[EMAIL PROTECTED]
> > >>Sent: Wednesday, October 13, 2004 2:14 AM
> > >>To: Struts Users Mailing List
> > >>Subject: sending/maintaning a download link
> > >>
> > >>hi guys,
> > >>
> > >>how do i do this in struts?
> > >>
> > >>i want to send a download link ( via email - resolved ) to a newly
> > >>registered user and that download link will expire after 24hrs.
> > >>
> > >>is there and apache project for this?
> > >>
> > >>please help
> > >>
> > >>thanks in advance
> > >>richard
> > >>
> > >>---------------------------------------------------------------------
> > >>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]
> > >
> > >
> >
> > ---------------------------------------------------------------------
> > 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]
> 
>

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

Reply via email to