Java 如何在Oracle UCM上使用collectionId进行全文搜索?
如何在Oracle UCM上使用collectionId进行全文搜索?是否可以从collectionId参数递归开始进行全文搜索? 我做了一些试验(您可以在下面查看),但如果我使用collectionId进行测试,则不会返回结果Java 如何在Oracle UCM上使用collectionId进行全文搜索?,java,oracle-ucm,Java,Oracle Ucm,如何在Oracle UCM上使用collectionId进行全文搜索?是否可以从collectionId参数递归开始进行全文搜索? 我做了一些试验(您可以在下面查看),但如果我使用collectionId进行测试,则不会返回结果 public List<UCMDocumentTemplate> fullTextSearchByFolderId(@WebParam(name = "searchCriteria") String paramSearchCriteria, @Web
public List<UCMDocumentTemplate> fullTextSearchByFolderId(@WebParam(name = "searchCriteria")
String paramSearchCriteria, @WebParam(name = "ucmFolderId")
Long ucmFolderId) throws UCMDocumentSearchException
{
List<UCMDocumentTemplate> documentTemplateList = new ArrayList<UCMDocumentTemplate>();
String documentSearchCriteria = "";
try
{
if (ucmFolderId != null)
documentSearchCriteria = "xCollectionID <= <qsch>" + ucmFolderId + "</qsch> <AND>";
documentSearchCriteria += "dDocFullText <substring> <qsch>" + paramSearchCriteria + "</qsch>";
List<Properties> childDocumentList = UCM_API.fullTextSearch(documentSearchCriteria);
UCMDocumentTemplate ucmDocumentTemplate = null;
if (childDocumentList != null)
for (Properties properties : childDocumentList)
{
ucmDocumentTemplate = transformToUCMDocumentTemplate(new UCMDocumentTemplate(), properties);
documentTemplateList.add(ucmDocumentTemplate);
}
}
catch (Exception e)
{
UCMDocumentSearchException exc = new UCMDocumentSearchException(documentSearchCriteria, e);
System.err.println(exc.getCompleteCode());
e.printStackTrace();
throw exc;
}
return documentTemplateList;
}
public static List<Properties> fullTextSearch(String searchCriteria) throws Exception
{
List<Properties> resultList = null;
List<Field> fields = null;
Properties responseProperties = null;
Properties inputBinderProperties = new Properties();
inputBinderProperties.put("IdcService", "GET_SEARCH_RESULTS");
inputBinderProperties.put("QueryText", searchCriteria);
inputBinderProperties.put("SearchEngineName", "databasefulltext");
inputBinderProperties.put("ResultCount", "500");
DataBinder responseBinder = getExecutedResponseBinder(userName, inputBinderProperties);
DataResultSet resultSet = responseBinder.getResultSet("SearchResults");
fields = resultSet.getFields();
resultList = new ArrayList<Properties>();
for (DataObject dataObject : resultSet.getRows())
{
responseProperties = new Properties();
for (Field field : fields)
{
if (field.getType() == Field.Type.DATE && dataObject.getDate(field.getName()) != null)
responseProperties.put(field.getName(), dataObject.getDate(field.getName()));
else
responseProperties.put(field.getName(), dataObject.get(field.getName()));
}
resultList.add(responseProperties);
}
return resultList;
public List fullTextSearchByFolderId(@webgram(name=“searchCriteria”)
字符串paramSearchCriteria,@WebParam(name=“ucmFolderId”)
长ucmFolderId)引发UCMDocumentSearchException
{
List documentTemplateList=新建ArrayList();
字符串documentSearchCriteria=“”;
尝试
{
if(ucmFolderId!=null)
documentSearchCriteria=“xCollectionID我找到了一个解决方案。将参数添加到inputBinderProperties时,它工作正常
inputBinderProperties.put("folderChildren", ucmFolderId);