Я хочу использовать DFCs
, чтобы изменить значение r_accessor_permit группы, назначенной acl:
1 -> сначала я выбрал ACL под названием "fme"
2 -> Затем я написал следующий DQL, чтобы получить назначенные ему группы:
select r_accossor_name from dm_acl where object_name = 'fme'
3 -> Я получил список групп и скопировал одну из них, которая называлась: grp_corp_lgl_sateri_hk
Тогда я написал следующее:
public void changeGroupPermission (){
try{
String myAcl = "fme";
IDfACL acl = (IDfACL)_session.newObject("dm_acl");
acl.setString("object_name", myAcl);
acl.revoke("grp_corp_lgl_sateri_hk","execute_proc");
acl.save();
}catch(Exception E){
System.out.println(E.getLocalizedMessage());
}
}
И я запустил его, в результате была следующая ошибка:
[DM_ACL_E_NOMATCH]ошибка: «Нет совпадений ACE для имени ‘grp_corp_lgl_sateri_hk’ в ACL ‘fme’».
Я совершенно уверен, что не сделал ни одной опечатки. Но я не могу найти причину, по которой я сталкиваюсь с такой ошибкой. Любая идея, где я делаю свою ошибку?
===> Обновление вопроса После того, как я понял, в чем была моя ошибка, основанная на комментариях, я предпринял еще одну попытку следующим образом:
try{
String aclName = "fme";
IDfACL acl = _session.getACL(aclName, "LEXOPEDIA");
acl.destroy();
//or
acl.revoke("grp_sateri_prc_lgl_acc2", "change_location");
acl.save();
}catch(Exception E){
E.printStackTrace();
}
Но я все еще продолжаю получать ошибки, и я действительно знаю, почему? Есть идеи ?