我的本地系统驱动器中有一些xml
文件,我想在远程xml
服务器4.2中加载这些Marklogic
文件,我通过IP地址和密码访问这些文件。但是,我尝试使用database
或xquery
代码直接上传它显示如下错误,所以有没有WebDAV
服务器的任何解决方案在远程marklogic数据库中加载xml
文件?
错误: -
Invalid input: SVC-DIROPEN: xdmp:filesystem-directory("D:\Application\xml") -- Directory open error: FindFirstFile 'D:\Application\xml\*': The system cannot find the path specified.
[1.0-ml] SVC-FILOPN: xdmp:document-get("file://D:/Application/xml/ch001s001.xml", <options xmlns="xdmp:document-get"><encoding>UTF-8</encoding><repair>full</repair></options>) -- File open error: open '/Application/xml/ch001s001.xml': No such file or directory
答案 0 :(得分:4)
我认为问题是所提到的目录仅存在于本地计算机上,而不存在于远程服务器上。 xdmp:filesystem- *,以及xdmp:document-get等函数在文件系统上查看相对于服务器的信息。所以,&#39; c:\&#39;将指向服务器上的c:\路径,而不是本地计算机。
您可以使用HTTP
PUT
或POST
请求将您的文件发送到MarkLogic,但这需要一个能够处理此类请求的XQuery文件。其他可能更简单的选项涉及设置XDBC
服务器,并使用RecordLoader,xmlsh等工具将文档推送到MarkLogic。您可以在http://developer.marklogic.com/找到这些内容。
HTH!
PS:你对使用WebDAV
有什么看法?有很多库可以使用WebDAV
将内容推送到MarkLogic。甚至还有MarkLogic Ant的任务。