Hi Peter,

We are actually using 2.1. I know we should upgrade, but we are planning a 
complete revamp of the app in 6 months.

I was actually looking at the SessionValidator class when your email arrived. 
However, I am not sure where to begin in trying to use it. According to the 
docs, "This action is special in that it should only be executed by the Turbine 
servlet." So, I guess I would have to extend it and then set the value of that 
class in my TRProps file?

Thanks for the help.

--Nathan


-----Original Message-----
From: Peter Courcoux [mailto:[EMAIL PROTECTED]
Sent: Thu 1/31/2008 8:56 AM
To: Turbine Users List
Subject: Re: user is nulled out on login attempt
 
Hi Nathan,

I assume that you are using Turbine 2.3.x.

I may be wrong and I don't have the code to hand at the moment, but I 
suspect that you might need to look at the SessionValidator which is 
called before you get to the login page.

The SessionValidator is pluggable if you need to modify it.

I hope that this helps.

Regards,

Peter

Shaw, Nathan (HQ-LD070)[InDyne, Inc] wrote:
> Hi all,
> 
> I am writing my own login action and need to be able to check to see if a 
> user is already logged in when the action is called. If they are, I want to 
> skip the login stuff to preserve their session. However, every single time 
> that the login action is called, the User object is coming back NULL.
> 
> Here is a code snippet. Does anyone have any idea WHY the user is coming back 
> NULL? I assume something is happening in Turbine somewhere that wipes the 
> User on a login attempt or something?
> 
> 
> public class OutageCalLoginUser extends LoginUser  {
> 
> public void doPerform( RunData data, Context context) throws Exception {
>     String uname ;
>     String passwd ;
>     
>     System.out.println("doPerform(data, context)");
>     if ( data.getUserFromSession() == null ){
>       System.out.println("user from session is null");
>     }else{
>       System.out.println("user from session is NOT null");
>     }
>     
>     if(data.getUser() == null){
>       System.out.println("user is null");
>     }else{
>       System.out.println("user is NOT null");
>       if(data.getUser().hasLoggedIn()){
>               System.out.println("user is logged in");
>         }else{
>               System.out.println("user is NOT logged in");
>         }
>     }
>     
>     
>     if((data.getUser() == null) || (data.getUser() != null && 
> data.getUser().hasLoggedIn() == false)){
>       
>           try {
>             SymEncDec enc = SymEncDec.getInstance();
>             
>             // Username/password = username/pswd coming through front door.
>             // User coming from elsewhere will have neither username nor pswd.
>             String username = data.getParameters().get("username");
>             String pswd = data.getParameters().get("password");
>       
>             // If username exists, user came in the front door.
>             if (username != null && username.length()>0) {
>                 uname = username;
>                 passwd = pswd;
>             }else {
>                 uname = "guest";
>                 String encryptedPasswd = 
> TurbineResources.getString("guest.credential");
>                 passwd = encryptedPasswd;
>                 //enc.decodeBase64Decrypt(encryptedPasswd);
>             }
>             // Log the user in
>             doLogin(data, uname, passwd);
>             
>             try {
>               Utils.getUserID(data);
>             }
>             catch (NullPointerException npe) {
>               throw new TurbineSecurityException("Bad username or password, I 
> say!");
>             }
>       
>           }
>           catch ( TurbineSecurityException se ) {
>             badUserOrPassword(se, data);
>           }
>           catch (Exception e) {
>             throw new PortalVelocityException(e.getMessage()==null?": 
> "+e.getMessage():e.getMessage(),
>               e.getCause()==null?e:e.getCause(), data);
>           }
>     
>     }
>   }
> 
> } 
> 

---------------------------------------------------------------------
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