Marklogic只通过内容处理框架转换我的一半文档

时间:2016-07-25 15:34:05

标签: marklogic

我使用WebDAV服务器通过拖放将PDF,DOC,PPTX和XLSX导入我的数据库。我的WebDAV服务器被称为“CPF”,他的根是“/”,他的端口号是“9999”。

sorry for the german

我使用标准配置安装了内容处理框架。

可能是因为我没有所需的安全要求吗?

对于这种情况,MarkLogic说:

  

在根目录上设置所需权限

     

将文档添加到数据库进行转换时,添加文档的用户必须具有添加和修改文档所需的权限。如果使用WebDAV服务器将文档拖放到数据库中,则WebDAV服务器的根目录也必须具有所需的权限。

     

实现这些安全要求的一种简单方法是执行以下操作:

     
      
  • 为配置为WebDAV服务器根目录的URI创建URI权限。

  •   
  • 创建具有URI权限且默认权限为read的角色。插入并更新角色。

  •   
  • 为您创建的角色设置WebDAV根目录的权限。例如,如果您创建的角色名为webdav,并且根目录具有URI / webdav / root /,则运行类似于以下内容的查询(作为特权用户):

  •   
xdmp:document-set-permissions("/webdav/root/",

( xdmp:permission("webdav", "read"),

xdmp:permission("webdav", "insert"),

xdmp:permission("webdav", "update") ) )

您可以使用以下查询检查权限:

xdmp:document-get-permissions("/webdav/root/")

•将新角色(上例中的webdav)授予访问WebDAV服务器的用户。

在这种情况下,我不知道他们正在谈论哪个“角色”和“根目录”?

但如果错误来自其他地方怎么办?为什么我将某些文件转换为.xml文件,将其他文件转换为.xhtml文件,大约50%的原始文件被忽略而未转换?

根据Dave Cassel的建议,我为其中一个未能处理的记录运行了xdmp:document-properties()。结果如下:

<?xml version="1.0" encoding="UTF-8"?>
<prop:properties xmlns:prop="http://marklogic.com/xdmp/property">
  <cpf:processing-status xmlns:cpf="http://marklogic.com/cpf">done</cpf:processing-status>
  <cpf:property-hash xmlns:cpf="http://marklogic.com/cpf">93bdf4b50736752e0155c8e16fd42544</cpf:property-hash>
  <cpf:last-updated xmlns:cpf="http://marklogic.com/cpf">2016-07-25T11:26:13.006+02:00</cpf:last-updated>
  <cpf:state xmlns:cpf="http://marklogic.com/cpf">http://marklogic.com/states/property-updated</cpf:state>
  <cpf:self xmlns:cpf="http://marklogic.com/cpf">/XXX/PDFs/XXXXX.pdf</cpf:self>
  <Win32CreationTime xmlns="urn:schemas-microsoft-com:">Mon, 25 Jul 2016 08:05:44 GMT</Win32CreationTime>
  <Win32LastAccessTime xmlns="urn:schemas-microsoft-com:">Mon, 25 Jul 2016 09:26:12 GMT</Win32LastAccessTime>
  <Win32FileAttributes xmlns="urn:schemas-microsoft-com:">00000000</Win32FileAttributes>
  <Win32LastModifiedTime xmlns="urn:schemas-microsoft-com:">Mon, 25 Jul 2016 08:05:44 GMT</Win32LastModifiedTime>
</prop:properties>

1 个答案:

答案 0 :(得分:4)

CPF存储有关文档属性中的状态更改和错误的信息。要诊断发生了什么,请转到查询控制台并在其中一个未处理的文档上运行xdmp:document-properties()。这可能会告诉你错误是什么。

查看您添加的属性,我看到状态为http://marklogic.com/states/property-updated,我看到一组Microsoft属性。查看管理UI的内容处理安装选项卡时获得的管道,该状态似乎是一个死胡同 - 也就是说,没有其他管道使用该状态作为起点。那么您是否有任何其他处理来创建这些Microsoft属性?