gpt4 book ai didi

java - Filenet 存储对象并从存储中获取对象 - Java Step Processor

转载 作者:行者123 更新时间:2023-12-01 04:10:27 26 4
gpt4 key购买 nike

我正在实现 Filenet Java Step Processor。我必须从对象存储中获取文档,进行修改并将修改后的版本存储到同一对象存储中。我有一个用于测试的工作小程序。我无法要求用户额外发送登录名和密码,我必须使用 VWSession 对象。我必须获得的文件作为步骤附件发送。我知道如何获取附加文档 ID。如何使用 VWSession 对象作为对象存储的连接点,从 Java Step Processor 中按 ID 获取文档?

最佳答案

获取一个 ObjectStore 实例(从 VWSession 中获取 domainId,并使用 VWSession 中的 Connection 构造域)并将 Attachment 传递给以下方法:

private String getIdFromAttachment(VWAttachment att, ObjectStore os) {
if (att.getLibraryType() != 3) {
String libtype = String.valueOf(att.getLibraryType());
throw new VWException("hk.ibm.ecm.cpa.uwfcustomcomponent.InvalidLibraryType",
"Cannot convert object from non-CE repository, type {0}.", libtype);
}

String attId = att.getId();
switch (att.getType()) {
case 3:
case 4:
VersionSeries vs = (VersionSeries) os.getObject("VersionSeries", attId);
vs.refresh();
String ver = att.getVersion();
return getIdBasedOnVersion(vs, ver);
default:
return attId;
}
}

private String getIdBasedOnVersion(VersionSeries vs, String ver) {
if (ver == null) {
Document current = (Document) vs.get_CurrentVersion();
current.refresh();
return current.get_Id().toString();
} else if ("-1".equals(ver)) {
Document released = (Document) vs.get_ReleasedVersion();
released.refresh();
return released.get_Id().toString();
} else {
return ver;
}
}

关于java - Filenet 存储对象并从存储中获取对象 - Java Step Processor,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20412270/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com