WEB开发网
开发学院软件开发Java 基于 IBM 和 FileNet 内容管理产品的联合查询服务... 阅读

基于 IBM 和 FileNet 内容管理产品的联合查询服务

 2010-02-05 00:00:00 来源:WEB开发网   
核心提示: 某些存储库可能不支持查询操作,因此在进行相关操作之前,基于 IBM 和 FileNet 内容管理产品的联合查询服务(6),应该获取存储库的配置信息,并判断其是否支持查询,清单 3. 设置查询条件和定制返回结果query.setDataMapInUseName("TwoCMDataMap

某些存储库可能不支持查询操作,因此在进行相关操作之前,应该获取存储库的配置信息,并判断其是否支持查询。IBM Content Manager 和 P8 Content Manager 都支持查询,因此接下来可创建一个 ICI 联合查询实例,并指定要查询的存储库连接器。

清单 2. 判断存储库是否支持查询,如果支持,创建一个联合查询实例

 if(!cmRepo.getRepositoryProfile().getCanQuery() 
 || !p8Repo.getRepositoryProfile().getCanQuery()){ 
 System.out.println("选定的存储库不支持联合查询"); 
 return; 
 } 
 MultiQuery query = repoUser.getMultiQueryInstance(); // 创建联合查询对象 
 query.addRepository(cmRepo); 
 query.addRepository(p8Repo); 

调用相关 API 设置查询条件,如数据映射关系、最大查询结果数、查询限制条件、显示结果的字段和排序规则等,设置完毕后执行查询。ICI 有自己特定的查询语句格式,在对存储库进行查询操作之前,会将其转化为可被存储库所接受的查询语言。

清单 3. 设置查询条件和定制返回结果

 query.setDataMapInUseName("TwoCMDataMap"); // 将数据映射关系添加到查询中 
 query.setMaxResults(5); // 设置最大查询结果数 
 query.setSelectionCriteria("Name Is NotNull"); // 设置查询限制条件 
 // 定制返回结果列表的字段 
 query.addSelectionProperties("stringType, dateType, integerType"); 
 // 定义排序规则 
 SortSpecification aSpec = 
new SortSpecification("integerType", SortSpecification.DESCENDING); 
 
 SortSpecification[] sortSpecs = {aSpec}; 
 query.setSortSpecifications(sortSpecs); 
 // 指定查询类别如内容(Content)还是文件夹(Folder) 
 IResultSet irs = query.execItemQuery(IQuery.CONTENT_QUERY); // 执行查询 

上一页  1 2 3 4 5 6 7 8  下一页

Tags:基于 IBM FileNet

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接