Great! I'm glad it worked fine. I'll merge your documentation additions as soon as I have a moment, thanks for providing them.
I like your idea of generating multiple flash map IDs, it seems like a good solution would make the implementation more flexible. Feel free to modify the code and upload it here - again if I have some time I'll try to have a look at it also. As for setting a timeout value on the flash map, the idea's interesting but I think it would only delay the problem. Sure putting a 60-second delay on the map would allow it to survive to quick refreshes, but it wouldn't solve the case when a user returns to this page later using the back button; plus it would be possible to clog the session with long-lived flash maps if not used correctly. On the other hand, maybe it would solve enough cases to motivate adding this functionality; plus giving a choice to the developer can be a good thing. Maybe the Struts2 seniors would like to give their opinion on this? To implement this I'd have the result add a timestamp to the map and the interceptor check for the timestamp's validity instead of starting a timer though, it would be much lighter. Cheers, GB kenk wrote: > > GB, > > I've finished implementing my use case using your FlashInterceptor and > FlashResult -- it worked perfectly and I didn't need to change anything in > your code. :clap: > > But it did take me a while to achieve success, mainly owing to my newness > to Struts 2 and the difficulty I've had following the S2 documentation. > So having said that, I have uploaded some revisions to your JavaDocs, in > hopes that they will help other newbies dealing with the whole flash scope > issue, perhaps you can add these. > > The main feedback item I have on the code is the hard-coded "__flashMap" > key on the session -- this limits you to one flash scope at a time. How > about having the FlashResult generate a random key value ( i.e. > __flashMap_xxxxx ), send this as a request parameter, have the > FlashInterceptor detect this value and use it to access the map. Poof! > No more issue with multiple browser windows open. > > For the refresh issue, have an optional configuration parameter on the > FlashInterceptor called "flashMapTimeout", defaulting to 60 seconds. > Instead of immediately removing the flash map from the session, start a > java.util.Timer and remove it later. Poof! Now the refresh works (until > the timeout occurs). > > Thanks again for making your code available! > Ken > > http://www.nabble.com/file/p17659710/JavaDocAdditions.txt > JavaDocAdditions.txt > -- View this message in context: http://www.nabble.com/Is-there-such-a-thing-as-flash-in-S2--tp16697840p17670259.html Sent from the Struts - User mailing list archive at Nabble.com. --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]