Le 30/06/2011 14:17, Jean Couteau a écrit :
Je rencontre une NPE dans la sécurité Wikitty que je ne comprends pas. J'ai ce code :
WikittyUser admin = new WikittyUserImpl();
admin.setLogin(RefcompConfigurationHelper.getAdminLogin(config)); admin.setPassword(RefcompConfigurationHelper.getAdminPassword(config)); admin = proxy.store(admin);
WikittyGroup adminGroup = WikittySecurityUtil.createAppAdminGroup(admin); Vu la trace sur la liste refconf, c'est pas ce code qui est executé, mais celui là:
//get results PagedResult<WikittyUser> userPagedResult = proxy.findAllByCriteria(WikittyUser.class, criteria); if (userPagedResult.size() == 0){ [...] } else { //attach admin to adminGroup if it does exist WikittyUser admin = userPagedResult.getFirst(); //Find the group from its name Search searchGroup = Search.query() .eq(WikittyGroup.FQ_FIELD_WIKITTYGROUP_NAME, WikittySecurityUtil.WIKITTY_APPADMIN_GROUP_NAME); Criteria criteriaGroup = searchGroup.criteria(); WikittyGroup adminGroup = proxy.findByCriteria(WikittyGroup.class, criteriaGroup); if (adminGroup == null) { adminGroup = WikittySecurityUtil.createAppAdminGroup(admin); }else if ((adminGroup.getMembers() == null)||(!adminGroup.getMembers().contains(admin.getWikittyId()))) { adminGroup.addMembers(admin.getWikittyId()); } proxy.store(adminGroup); } Et vu que le contexte d'utilisation est une reconstruction de l'index solr, tu ne peux pas faire de findAllByCriteria dans ce cas, puisque l'index n'est pas sensé être bon. -- Éric Chatellier <chatellier@codelutin.com> Tel: 02.40.50.29.28 http://www.codelutin.com