Joe- I don't know if you have gone through the "Specification" document, if not, it may be found at http://jakarta.apache.org/turbine/turbine-2/fsd.html. This document describes the process flow for a typical Turbine request, including checks for authenticated users. In particular there is one paragraph that is pertinent to your problem:
++++++++++++++ Once the user has been validated (the RunData.save() method has been called) or not validated, then the SessionValidator action is executed from within the Turbine servlet. The SessionValidator action checks to see if a user has been logged in. If the user has not been logged in, then the Screen is set to be the "Login" screen. If not, then the users last access datestamp is updated. *** If you would like to allow the user to view multiple pages without the need to login first, you will need to implement your own version of SessionValidator that just returns nothing as a result. *** Then, for the pages that you will want to make secure, you should define a Layout that executes the SessionValidator action to make things secure. Then, your Screens should call that "secure" Layout. +++++++++++++++ It sounds like the *** part will be important when it comes time to discern between your public and private pages. However, this would not be the solution to your problem at hand. TR.props may be the key to solving your problem. There is a section in that file called Framework Settings where you set all of you Login, Error, and Homepage info. In particular, there is a property called template.login and one called screen.login. Make sure that you are setting template.login so that the LoginUser action (org/apache/turbine/modules/actions/LoginUser.java) knows to call setScreenTemplate() instead of setScreen(). Maybe that will do it... -Brian On Thu, 1 Nov 2001, Joe Terry wrote: > Hi Everyone, > > When my app initializes I see the following in the velocity.log ... > > ============================================================= > > Thu Nov 01 21:56:16 PST 2001 [info] ResourceManager : found screens/Login.vm with >loader org.apache.velocity.runtime.resource.loader.FileResourceLoader > Thu Nov 01 21:56:16 PST 2001 [info] ResourceManager : found layouts/Login.vm with >loader org.apache.velocity.runtime.resource.loader.FileResourceLoader > Thu Nov 01 21:56:16 PST 2001 [info] ResourceManager : found >navigations/LoginTop.vm with loader >org.apache.velocity.runtime.resource.loader.FileResourceLoader > Thu Nov 01 21:56:16 PST 2001 [info] ResourceManager : found >navigations/LoginBottom.vm with loader >org.apache.velocity.runtime.resource.loader.FileResourceLoader > > ============================================================= > > Notice that my Login.vm screen indeed finds my Login.vm layout. All is well, except >I still haven't gotten nested layouts to work. (hierarchical directories of screens >and layouts ... I'm all flat) > > If I simply press the login button as opposed to selecting a setPage or setAction I >get the "homepage" but I still have to log in before any other actions will work. > > The result is this ... > > ============================================================= > > Thu Nov 01 22:05:21 PST 2001 [info] ResourceManager : found screens/Login.vm with >loader org.apache.velocity.runtime.resource.loader.FileResourceLoader > Thu Nov 01 22:05:21 PST 2001 [info] ResourceManager : found layouts/Default.vm >with loader org.apache.velocity.runtime.resource.loader.FileResourceLoader > Thu Nov 01 22:05:21 PST 2001 [info] ResourceManager : found >navigations/DefaultTop.vm with loader >org.apache.velocity.runtime.resource.loader.FileResourceLoader > Thu Nov 01 22:05:21 PST 2001 [info] ResourceManager : found >navigations/ApplicationMenu.vm with loader >org.apache.velocity.runtime.resource.loader.FileResourceLoader > Thu Nov 01 22:05:21 PST 2001 [info] ResourceManager : found >navigations/DefaultBottom.vm with loader >org.apache.velocity.runtime.resource.loader.FileResourceLoader > > ============================================================= > > Notice, because of the failed login, the Login.vm screen is expressed again, but the >layout is now the Default.vm layout, bringing with it unwanted navigation as well. >This is not the behavior I am looking for... > > Question: I want to have "informational" links on the initial "Login" screen that >represent a "web" of informational pages, that do _not_ require login. > > Then if the user clicks the "Login" button and is not validated, I want them to stay >on the "initial" screen, or in that initial "web", and links accessable from that >screen. I want a kind of doorway between one world and the next, complete access >before login and then additional screens available _only_ after a proper login and I >know the identity of the client. > > Can someone help with the "pseudocode" version Turbine style with enough detail to >get me to the right source files. > > I have compiled Turbine and am now using the Jar file created from that build, so >I'm ready to do some damage and be able to rebuild the Jar file. > > Thanks everyone for your help. > > I'm a taker now, but I do plan on giving as soon as I'm able. > > Joet > > -- =========================== Brian Lawler -- To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]> For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>
