0

我正在尝试使用 dfc 制作一个动态应用程序,我想在其中获取服务器上存在的所有存储库名称。

例如,如果有 3 个存储库,即 r1、r2 和 r3。如何获取程序中的名称?

4

3 回答 3

0

您必须要求 docbroker 获取已知的 docbases 列表。有关这方面的信息,请参阅 DFC 文档。您还可以获取每个 docbase 的服务器名称,但如果您想使用 DFC,则无法查询 docbrokers。请注意,文档库可以驻留在 docbroker 以外的其他服务器上。

于 2018-08-29T04:25:07.830 回答
0

在 DFC 中,您可以获得存储库列表,如下所示:

IDfDocbaseMap docbaseMap = DfClient.getLocalClient().getDocbaseMap();
for (int i = 0; i < docbaseMap.getDocbaseCount(); i++) {
    processRepository(docbaseMap.getDocbaseId(i), 
        docbaseMap.getDocbaseName(i);
        docbaseMap.getDocbaseDescription(i));
}

但它是注册到 Docbroker 的存储库列表,每个存储库可以在不同的服务器上运行。

恐怕如果没有与每个存储库的会话,您将无法按服务器过滤它们。使用会话,您可以通过以下方式执行此操作:

((StrongSessionHandle) session).getDocbaseConnection().getServer().getName()

或者

session.getServerConfig().getString("object_name")
于 2018-08-31T07:36:19.260 回答
0

您可以部署 Documentum Restful 服务,并在 Restful DFC 属性文件中将服务器名称指定为主机,它将在以下 URL 上为您提供 XMl/JSON 响应 -

XMl 响应 - URL/DctmRest/repositories

JSON 响应 - URL/DctmRest/repositories.json

于 2018-08-30T02:04:01.003 回答