Login.java :  » Mobile » mreunion » net » mreunion » web » pages » Java Open Source

Java Open Source » Mobile » mreunion 
mreunion » net » mreunion » web » pages » Login.java
package net.mreunion.web.pages;

import net.mreunion.web.UserSessionASO;
import net.mreunion.web.annotation.PublicPage;
import net.mreunion.web.entities.User;
import net.mreunion.web.exception.LoginException;
import net.mreunion.web.pages.statistics.GenerateChart;
import net.mreunion.web.services.LoginService;

import org.apache.tapestry5.annotations.Component;
import org.apache.tapestry5.annotations.Property;
import org.apache.tapestry5.annotations.SessionState;
import org.apache.tapestry5.corelib.components.Form;
import org.apache.tapestry5.corelib.components.TextField;
import org.apache.tapestry5.hibernate.annotations.CommitAfter;
import org.apache.tapestry5.ioc.annotations.Inject;
import org.slf4j.Logger;



@PublicPage
public class Login {
  @Inject
  private Logger logger;

  @Property
  private String username;
  
  @Property
  private String password;

  @Component(id = "username")
  private TextField _username;
  
  @Component(id="loginForm")
  private Form form;

  @SessionState(create=false)
  private UserSessionASO userSession;  

  @Inject
  private LoginService loginService;
  
  void onValidateForm() {
    try {
      logger.info("Authenticating " + username);
      User user = loginService.authenticate(username, password);
      
      if(null != user) {
        userSession = new UserSessionASO();
        userSession.setUser(user);
        loginService.login(user);
      }
        
    } catch (LoginException e) {
      form.recordError(_username, e.getMessage());
      logger.error(_username + " " +  e.getMessage());
    }
  }
  
  @CommitAfter
  Object onSuccess() {
    if (logger.isDebugEnabled()) {
      logger.debug("Success " + userSession);
    }

    if(null == userSession) return null;
        
//    logger.info("Access Level " + visit.getUser().getAccessLevel());    
//    if(AccessLevel.Admin.equals(visit.getUser().getAccessLevel())) {
//      return admin;
//    }
//    else 
//      return ListContact.class;
//    
    // update login info
//    User user = visit.getUser();
//    loginService.login(user);

//    if(User.AccessLevel.Admin == user.getCurrentProfile().getAccessLevel())
//      return Admin.class;
//    else
//      return UserMenu.class;
    
    return GenerateChart.class;
  }

}
java2s.com  | Contact Us | Privacy Policy
Copyright 2009 - 12 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.