我测试了一个简单的程序来更改类并再次上传文档。当我正常使用我的管理员帐户时,它可以正常工作,但是当我从非管理员帐户登录时,它不允许我编辑属性。
public void senddoc(String send,String clas){
System.out.println(send);
Document docn = Factory.Document.createInstance(os, null);
InputStream input = null;
ContentElementList contEleList = Factory.ContentElement.createList();
ContentTransfer ct = Factory.ContentTransfer.createInstance();
Folder folder = Factory.Folder.fetchInstance(os,send, null);
ContentElementList contEleList2 = Factory.ContentElement.createList();
ContentTransfer ct2 = Factory.ContentTransfer.createInstance();
contEleList= doc.get_ContentElements();
ct=(ContentTransfer) contEleList.get(0);
input = ct.accessContentStream();
System.out.println(input);
ct2.setCaptureSource(input);
ct2.set_ContentType("image/tiff");
ct2.set_RetrievalName("New File Title");
contEleList2.add(ct2);
docn.set_ContentElements(contEleList2);
Properties properties = doc.getProperties();
String Title = properties.getStringValue("DocumentTitle");
//read other
docn.checkin(AutoClassify.DO_NOT_AUTO_CLASSIFY, CheckinType.MAJOR_VERSION);
docn.save(RefreshMode.REFRESH);
ReferentialContainmentRelationship rcr = folder.file(docn,
AutoUniqueName.AUTO_UNIQUE, "New File Title",
DefineSecurityParentage.DO_NOT_DEFINE_SECURITY_PARENTAGE);
rcr.save(RefreshMode.REFRESH);
docn.changeClass(clas);
docn.save(RefreshMode.REFRESH);
docn.getProperties().putValue("DocumentTitle",Title);
//input other
docn.save(RefreshMode.REFRESH);
rcr.save(RefreshMode.REFRESH);
}
但问题是,当我重新上传文档时,它只能由管理员用户编辑,原始文档作者部分已被删除。那么如何在原始文件中进行修改呢?
任何输入中的Thx。 :)
答案 0 :(得分:1)
docn.set_Permissions(doc.get_Permissions());
我之前尝试过几个批量上传程序(作为IBM中的演示代码),但我没有添加它,但它适用于所有文档都拥有所有用户的权限。但在此(服务转换文档)类和索引)我必须映射它。
希望这有助于任何人面对这一点。
TNX