It does work on non-XML files. The error indicates that the document
"/myDirectory/sample_png_versions/1-sample.png" does not exist. Did you
invoke this module before completing the transaction that inserted the
document? 

Wayne.



On Thu, 2009-09-10 at 14:45 -0700, Sundar Iyer wrote:
> I'm evaluating ML 4.0-1 and found that dls:document-manage doesn't
> work for non-xml objects:
>  
> The XQuery Code that I tried is as below;
>         xquery version "1.0-ml";
>         
>         import module namespace dls = "http://marklogic.com/xdmp/dls"; 
>         
>         at "/MarkLogic/dls.xqy";
>         
>         declare variable $uri as xs:string external;
>         
>         dls:document-manage($uri, 
>         
>         fn:false(),
>         
>         "Initial version"
>         
>         )
>         
>         
>  
>  
> The error message is as below:
>         com.marklogic.xcc.exceptions.XQueryException
>         
>         : XDMP-DOCNOTFOUND:
>         
> xdmp:document-set-property("/myDirectory/sample_png_versions/1-sample.png", 
> <dls:update-permissions 
> xmlns:dls="http://marklogic.com/xdmp/dls";><sec:permission 
> xmlns:sec="http://marklogic.com/xdmp/security";><...</dls:update-permissions>) 
> -- Document not found 
>         
>         in /MarkLogic/dls.xqy, on line 1396
>         
>         expr:
>         
> xdmp:document-set-property("/myDirectory/sample_png_versions/1-sample.png", 
> <dls:update-permissions 
> xmlns:dls="http://marklogic.com/xdmp/dls";><sec:permission 
> xmlns:sec="http://marklogic.com/xdmp/security";><...</dls:update-permissions>),
>         
>         in
>         
> dls-document-change-properties("/myDirectory/sample_png_versions/1-sample.png",
>  (<dls:update-permissions 
> xmlns:dls="http://marklogic.com/xdmp/dls";><sec:permission 
> xmlns:sec="http://marklogic.com/xdmp/security";><...</dls:update-permissions>, 
> <dls:version 
> xmlns:dls="http://marklogic.com/xdmp/dls";><dls:version-id>1</dls:version-id><dls:document-uri>/myDirectory...</dls:version>),
>  2)
>         
>         in /MarkLogic/dls.xqy, on line 1146
>         
>         expr:
>         
> xdmp:document-set-property("/myDirectory/sample_png_versions/1-sample.png", 
> <dls:update-permissions 
> xmlns:dls="http://marklogic.com/xdmp/dls";><sec:permission 
> xmlns:sec="http://marklogic.com/xdmp/security";><...</dls:update-permissions>),
>         
>         in document-insert-version("/myDirectory/sample.png",
>         fn:doc("/myDirectory/sample.png"), "Initial version",
>         (<sec:permission
>         
> xmlns:sec="http://marklogic.com/xdmp/security";><sec:capability>update</sec:capability><sec:role-id>128592700530...</sec:permission>,
>  <sec:permission 
> xmlns:sec="http://marklogic.com/xdmp/security";><sec:capability>insert</sec:capability><sec:role-id>128592700530...</sec:permission>,
>  <sec:permission 
> xmlns:sec="http://marklogic.com/xdmp/security";><sec:capability>read</sec:capability><sec:role-id>12859270053073...</sec:permission>,
>  ...), (), 0, xs:unsignedLong("2015473912904977339"), fn:true())
>         
>         in /MarkLogic/dls.xqy, on line 1280
>         
>         expr:
>         
> xdmp:document-set-property("/myDirectory/sample_png_versions/1-sample.png", 
> <dls:update-permissions 
> xmlns:dls="http://marklogic.com/xdmp/dls";><sec:permission 
> xmlns:sec="http://marklogic.com/xdmp/security";><...</dls:update-permissions>),
>         
>         in _document-manage("/myDirectory/sample.png", fn:false(),
>         "Initial version", fn:false(), ())
>         
>         in /MarkLogic/dls.xqy, on line 144
>         
>         expr:
>         
> xdmp:document-set-property("/myDirectory/sample_png_versions/1-sample.png", 
> <dls:update-permissions 
> xmlns:dls="http://marklogic.com/xdmp/dls";><sec:permission 
> xmlns:sec="http://marklogic.com/xdmp/security";><...</dls:update-permissions>),
>         
>         in dls:document-manage("/myDirectory/sample.png", false(),
>         "Initial version")
>         
>         in /eval, on line 5
>         
>         expr:
>         
> xdmp:document-set-property("/myDirectory/sample_png_versions/1-sample.png", 
> <dls:update-permissions 
> xmlns:dls="http://marklogic.com/xdmp/dls";><sec:permission 
> xmlns:sec="http://marklogic.com/xdmp/security";><...</dls:update-permissions>)
>         
>         at
>         com.marklogic.xcc.impl.handlers.ServerExceptionHandler.handleResponse(
>         
>         ServerExceptionHandler.java:31) 
>         
>         at
>         com.marklogic.xcc.impl.handlers.EvalRequestController.serverDialog(
>         
>         EvalRequestController.java:68) 
>         
>         at
>         com.marklogic.xcc.impl.handlers.AbstractRequestController.runRequest(
>         
>         AbstractRequestController.java:72) 
>         
>         at com.marklogic.xcc.impl.SessionImpl.submitRequest(
>         
>         SessionImpl.java:280) 
>         
>         at com.cengage.marklogic.upload.InsertAndManage.xml(
>         
>         InsertAndManage.java:68) 
>         
>         at com.cengage.cms.server.upload.uploadfile(
>         
>         upload.java:51) 
>         
>         at com.cengage.cms.server.upload.processRequest(
>         
>         upload.java:35) 
>         
>         at com.cengage.cms.server.upload.doPost(
>         
>         upload.java:116) 
>         
>         at javax.servlet.http.HttpServlet.service(
>         
>         HttpServlet.java:637) 
>         
>         at javax.servlet.http.HttpServlet.service(
>         
>         HttpServlet.java:717) 
>         
>         at org.mortbay.jetty.servlet.ServletHolder.handle(
>         
>         ServletHolder.java:487) 
>         
>         at org.mortbay.jetty.servlet.ServletHandler.handle(
>         
>         ServletHandler.java:362) 
>         
>         at org.mortbay.jetty.security.SecurityHandler.handle(
>         
>         SecurityHandler.java:216) 
>         
>         at org.mortbay.jetty.servlet.SessionHandler.handle(
>         
>         SessionHandler.java:181) 
>         
>         at org.mortbay.jetty.handler.ContextHandler.handle(
>         
>         ContextHandler.java:729) 
>         
>         at org.mortbay.jetty.webapp.WebAppContext.handle(
>         
>         WebAppContext.java:405) 
>         
>         at org.mortbay.jetty.handler.HandlerWrapper.handle(
>         
>         HandlerWrapper.java:152) 
>         
>         at org.mortbay.jetty.handler.RequestLogHandler.handle(
>         
>         RequestLogHandler.java:49) 
>         
>         at org.mortbay.jetty.handler.HandlerWrapper.handle(
>         
>         HandlerWrapper.java:152) 
>         
>         at org.mortbay.jetty.Server.handle(
>         
>         Server.java:324) 
>         
>         at org.mortbay.jetty.HttpConnection.handleRequest(
>         
>         HttpConnection.java:505) 
>         
>         at org.mortbay.jetty.HttpConnection$RequestHandler.content(
>         
>         HttpConnection.java:843) 
>         
>         at org.mortbay.jetty.HttpParser.parseNext(
>         
>         HttpParser.java:647) 
>         
>         at org.mortbay.jetty.HttpParser.parseAvailable(
>         
>         HttpParser.java:205) 
>         
>         at org.mortbay.jetty.HttpConnection.handle(
>         
>         HttpConnection.java:380) 
>         
>         at org.mortbay.io.nio.SelectChannelEndPoint.run(
>         
>         SelectChannelEndPoint.java:395) 
>         
>         at org.mortbay.thread.QueuedThreadPool$PoolThread.run(
>         
>         QueuedThreadPool.java:488)
> When going thru the dls.xqy module, it appears that in the case of non
> xml, the code is trying to set permissions on a object that is not yet
> created. Any clue's on how I can either fix it or work around this
> problem?
>  
> Thanks.
>  
_______________________________________________
General mailing list
[email protected]
http://xqzone.com/mailman/listinfo/general

Reply via email to