/** Construct UserDetails instance required by spring security */
  public UserDetails loadUserByUsername(String userName) throws UsernameNotFoundException {
    UserEntity user = userDao.loadUserByUserName(userName);

    if (user == null) {
      throw new UsernameNotFoundException(
          String.format(getMessageBundle().getString("badCredentials"), userName));
    }

    Collection<GrantedAuthority> authorities = new ArrayList<GrantedAuthority>();
    authorities.add(new SimpleGrantedAuthority("ROLE_USER"));

    User userDetails = new User(user.getUserName(), user.getPassword(), authorities);

    return userDetails;
  }