Hi

I have a factory method for a field User in my SB, and I want to know why this 
method is calling as many time as the number of User's field?

in my case, the User has 12 fields do this method is called 12 times whereas I 
load it once from database ?

please take a look at following code:

  |     @Factory(value = "tempUser", scope = ScopeType.STATELESS)
  |     public User loadUser() {
  |             if(reload || tempUser == null) {
  |                     if(selectedUsername.equals("0")) {
  |                             logger.debug("instantiating a new User");
  |                             tempUser = new User();
  |                             verifyPassword = password = "";
  |                             selectedGroup = 0L;
  |                     }else{
  |                             logger.debug("loading User with username 
'"+selectedUsername+"'");
  |                             tempUser = userDao.load(selectedUsername);
  |                             if(tempUser.getGroup() != null)
  |                                     selectedGroup = 
tempUser.getGroup().getId();
  |                             verifyPassword = password = 
tempUser.getPassword();
  |                             selectedRoles = new ArrayList<String>();        
                        
  |                             for(UserRole r : tempUser.getRoles()) {
  |                                     selectedRoles.add(r.getRoleName());
  |                             }
  |                             logger.debug(tempUser.toString());
  |                             reload = false;
  |                             //setInputValuesWithUser();
  |                     }
  |             }
  |             return tempUser;
  |     }
  | 
  | 

as you see, at first the "reload" is true so the User will be populated from 
the database and then the reload will set to false, but at my XHTML page, no 
value will be displayed !!!!! however I can see all the User's value in the 
logs (produced by logger)

if I remove the line highlighted bu blue color reload = false; it will work 
fine but this method will be called 6 times and in app server console I can see 
that 12 times the EJB is selecting from database!!!

thank you very much in advance


View the original post : 
http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4095089#4095089

Reply to the post : 
http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4095089
_______________________________________________
jboss-user mailing list
[email protected]
https://lists.jboss.org/mailman/listinfo/jboss-user

Reply via email to