Hi Erik, No problem, it was a great workshop.
Thanks for the information. In that case, I don’t know if it’s worthwhile to submit an RFE to put code on the file system instead of a modules database for an HTTP app server with the RESTful interface. My only concern is the extra time it takes to save edits, 1-2 seconds via WebDAV (mounted as a volume in OS X) vs. virtually instantaneously with Sublime Text locally. Alternative ways to keep the code on the file system would be to use standalone Apache and modify the HTTPD config file to allow for cross-domain requests. Or perhaps use JSONP requests in Angular—is that the only workaround for the security if I were to use a MarkLogic HTTP app server? In that case, would it actually be a 3-tier architecture even though the app and database servers are both on the same MarkLogic instance? Thank you very much in advance for your time. Best, Shannon > On May 3, 2015, at 11:07 AM, Erik Hennum <[email protected]> wrote: > > Hi, Shannon: > > When a resource service or transform extension is installed, the REST API > generates some declarations and wrappers. So, no, at present neither the > file system nor WebDav would work for such extensions. > > For libraries installed as /v1/ext/YOUR_PATH/YOUR_MODULE.js or xqy, it > _might_ work to put the same resources in > $MARKLOGIC_INSTALL_DIR/Modules/v1/ext/YOUR_PATH/YOUR_MODULE.js, but that's a > hack I've not tried. Even if that hack happens to work now, you wouldn't want > to build up any infrastructure around it because it could stop working in the > future. > > > Erik Hennum > > PS It was a great to meet in person, and thanks for toughing it out through > the logistical hiccups. > > ________________________________________ > From: [email protected] > [[email protected]] on behalf of Shannon > [[email protected]] > Sent: Friday, May 01, 2015 3:18 PM > To: General MarkLogic Developer Discussion > Subject: Re: [MarkLogic Dev General] Moving REST API Instance module code to > a directory in Modules database > > Hi Erik, > > is there any reason why the code can’t reside on the file system as opposed > to a modules database? I tried this to no avail. When developing locally, I’m > able to save edits to files a lot faster on the file system than over a > WebDAV server. Just half a second to a second, but that adds up. > > For one AngularJS app, I started with a plain vanilla HTTP server, and then > when I was ready to work with $resource, I setup a REST server on another > port. I thought I’d be able to develop the app on the file system on the HTTP > server, but of course I ran into cross-domain JS security, being on two > different ports (using a 2-tier architecture). So I conflated the servers, > but that meant moving the code to a modules database. > > BTW, thanks again for all your help in the workshop :-) > > Best, > Shannon > >> Hi, Danny: >> >> The REST API doesn't support sharing modules databases between REST servers >> or providing an interface for renaming managed resources in the modules >> database. >> >> There could be a number of issues (for instance, permissions on the options >> file), but working through the issues on an unsupported operation would be >> guesswork. >> >> Part of the rationale for the one-to-one relation between modules databases >> and REST servers was to make it easy to package up a REST implementation on >> a development environment and push it to a production server. >> >> Can you expand on the issues you're running into with that one-to-one >> approach? >> >> >> Thanks, >> >> >> Erik Hennum >> >> ________________________________ >> From: >> general-bounces at developer.marklogic.com [general-bounces at >> developer.marklogic.com] on behalf of Danny Sinang [d.sinang at gmail.com >> ] >> Sent: Wednesday, April 29, 2015 8:12 AM >> To: general >> Subject: [MarkLogic Dev General] Moving REST API Instance module code to a >> directory in Modules database >> >> We have a REST API instance running on port 9042 on our DEV cluster and it >> works fine. >> >> When this instance was created, a new modules databases called >> 9042_imagechallenge-rest-modules was created for it by ML. >> >> I'm trying to avoid minimize the number of modules databases we have, so I : >> >> 1. Copied the code from 9042_imagechallenge-rest-modules to a new directory >> called "/imagechallenge_rest" in our Modules database. >> >> 2. Reconfigured our 9042-imagechallenge-rest app service to use >> /imagechallenge_rest as its root and Modules as its modules database. >> >> After step 2, I visited : >> >> >> http://marklogic-dev.mycompany.com:9042/v1/search?q=published:true&options=image_challenge >> >> >> and now I'm getting this error : >> >> <error-response xmlns=" >> http://marklogic.com/xdmp/error" >>> >> <status-code>400</status-code> >> <status>Bad Request</status> >> <message-code>REST-INVALIDPARAM</message-code> >> <message>REST-INVALIDPARAM: (err:FOER0000) Invalid parameter: No configured >> options: image_challenge</message> >> </error-response> >> >> >> I checked the /imagechallenge_rest directory and this "missing" option file >> is indeed under : >> >> /imagechallenge_rest/Default/9042-imagechallenge-rest/rest-api/options . >> >> >> What could I be missing ? >> >> Regards, >> Danny >> >> > _______________________________________________ > General mailing list > [email protected] > Manage your subscription at: > http://developer.marklogic.com/mailman/listinfo/general > _______________________________________________ > General mailing list > [email protected] > Manage your subscription at: > http://developer.marklogic.com/mailman/listinfo/general _______________________________________________ General mailing list [email protected] Manage your subscription at: http://developer.marklogic.com/mailman/listinfo/general
