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#...
Reply to the post :
http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&a...