Documentum データ ストレージに接続された Java プロジェクトを実行しています。API クラスを使用して手動で ACL を作成しようとしています。以下は私のコードです:
StringBuilder newAcl = new StringBuilder();
newAcl.append(selectedItem.getName());
newAcl.append(selectedItem.getId());
newAcl.append("_acl");
IDfACL acl = (IDfACL)_session.newObject("dm_acl");
acl.setObjectName(newAcl.toString());
acl.setDescription(newAcl.toString());
acl.save();
IDfPermit permit = new DfPermit();
permit.setAccessorName(newAcl.toString());
permit.setPermitType(IDfPermit.DF_ACCESS_PERMIT);
permit.setPermitValue(IDfACL.DF_XPERMIT_CHANGE_FOLDER_LINKS_STR);
permit.setPermitValue(IDfACL.DF_PERMIT_READ_STR);
acl.grantPermit(permit);
acl.save();
問題は、作成しようとしている ACL を正常に作成でき、dm_acl テーブル オブジェクトから取得できることです。私が立ち往生した唯一のことは、コードで所有者を指定したことがないため、所有者を設定する方法であり、 dm_acl テーブルを確認すると、所有者は dm_admin であると表示されます。どうすれば修正できますか?dm_acl で ACL を正常に作成できますが、次のようなエラーも表示されます。
[DM_ACL_E_USER_NOT_EXIST]エラー: 「ACL 'China InvestmentsCIL_acl' で指定された owner_name または accessor_name 'China InvestmentsCIL_acl' は存在しません。」