Hello:

First of all thanks for your help, I read the mails every day and I always
take something useful for my tap applications.

I have to implement an automatic login on my tap application. I use tap
5.2.6 and tapestry-security 0.3.1.
Initially I had a Login page with a login form,  but now I have to pass the
username and password to the login page via url, like this:

*http://localhost:8080/MyAppName/login?usr=userName&pass=encryptedPass*

If I try to enter writing "http://localhost:8080/MyAppName/"; then I have to
redirect to an external page (This is a client requirement).
Now I catch the usr and pass in.onActivate() method and here I execute the
following logic:


*@ActivationRequestParameter("usr")
private String usr;
@ActivationRequestParameter ("pass")
private String pass;


Object onActivate(){
    Object nextpage;
    if (usr!=null && pass!=null){
        if(doLogin(usr, pass){
            nextPage = "Index";
        } else {
            nextPage= "LoginErrorPage";
        }
    } else {
       nextPage= new URL "ExternalPage";
    }
}*

The problem is: If I write "http://localhost:8080/MyAppName/"; in my browser
and hit enter, then the login page appear, but it doesn't execute
onActivate() method!
So I can't redirect to the external page. But if I write "
http://localhost:8080/MyAppName/login"; the method is executed. Anybody know
why??
I thought that onActivate is always executed when a page is called.

Thanks!!

David


------------------------------------------------------------------
David Germán Canteros

Reply via email to