저는 seam 2.1.2 보안을 사용하고 있고 jsf richfaces GUI에 의해 identitymanager를 사용하여 역할을 만듭니다. 생성 과정에서 데이터베이스에 생성 된 역할에 "설명"을 추가하고 역할 생성은 괜찮지 만 설명 필드가 추가되지 않아 데이터베이스에 저장된 설명 필드를 볼 수있는 역할 (GUI에 의한 다른 작업)을 업데이트해야합니다 . 질문은 창조 작업에서 제기 된 "설명"을 저장하기 위해 무엇을해야합니까?identitymanager 역할 생성 후 역할 필드가 데이터베이스에 저장되지 않음
public boolean createRole(Role role) {
IdentityManager identityManager = IdentityManager.instance();
logger.info("creating role:" + role.getRoleName());
if (identityManager.roleExists(role.getRoleName())) {
return false;
}
if (identityManager.createRole(role.getRoleName())) {
completeRolePersistence(role);
return true;
}
return false;
}
과 completeRolePersistence 방법 :
public void completeRolePersistence(Role role) {
logger.info("setting additional info to role...");
Query query = em.createNamedQuery("UPDT_ADDITIONALS");
query.setParameter("name", role.getRoleName())
.setParameter("description", role.getDescription())
.setParameter("level", role.getRoleLevel());
int updated = query.executeUpdate();
logger.info("roles updated with desc : " + updated);
}
내가 로그
roles updated with desc : 0
완벽하게 작동합니다. entitymanager에서 juste persist 메서드를 사용하고 db에 모든 fileds 및 사용 권한이있는 역할을 저장합니다. – abk