0

我在Alfresco CMS中编写了以下 javascirpt 代码,用于查找 mimetype 为“image/png”的文件的名称并将其打印到 book.txt 文件中。此代码成功创建 book.txt 文件,但为空白;它不会写入任何 mimeType 为“image/png”的文件的名称,尽管有 100 多个 mimetype 为“image/png”的 png 图像文件:

var logFile = space.childByNamePath("book.txt");
if (logFile == null)
{
   logFile = space.createFile("book.txt");
}
if (logFile != null)
{
  var docs = search.luceneSearch("content.mimetype:'image/png'");
   var log = "";
   for (var i=0; i<docs.length; i++)
   {
      log += "Name: " + docs[i].name + "\tPath: " + docs[i].displayPath + "\r\n";
   }
   logFile.content += log;
}

任何建议此代码有什么问题。我已将此代码放在“公司主页>数据字典>脚本”中,并且从“公司主页>站点”运行此脚本,这是所有内容的根目录。因此,它是包含图像文件的所有文件夹的根目录。请指教。

4

2 回答 2

1

请尝试使用它可能会帮助你

 search.luceneSearch('+PATH:"/app:company_home//*" +@\\{http\\://www.alfresco.org/model/content/1.0\\}content.mimetype:text/plain');

content.mimetype:文本/纯文本

请在此处指定您的 mimetype

您可以从文档中找到更多信息

于 2018-06-07T05:01:27.387 回答
1

您的查询字符串中缺少命名空间(“cm:”)。尝试这个:

  var docs = search.luceneSearch("@cm\\:content.mimetype:\"image/png\"");
   var log = "";
   for (var i=0; i<docs.length; i++)
   {
      log += "Name: " + docs[i].name + "\tPath: " + docs[i].displayPath + "\r\n";
   }
于 2018-06-07T12:33:33.303 回答