On Sun, Nov 22, 2009 at 9:22 AM, Alexander Klimetschek <[email protected]> wrote: > On Fri, Nov 20, 2009 at 22:36, ChadDavis <[email protected]> wrote: >> I'm having a hard time sorting out deployment information from the web >> site. In perusing the mailing list, I find people recommending WEBDAV >> or Sling as alternatives to JCR-RMI for remote communication with the >> repository. >> >> I'm confused by this. Basically, I want a reference to the Repository >> object so I can code against the JCR API. How, then, are these HTTP, >> and other higher level protocols, seen as alternatives? > > Depending on your use case, an HTTP-level interface such as the Sling > POST and GET servlets provide can be sufficient to work with the > repository from eg. browser-based clients. >
Depending upon my use case . . . but this is clearly not a use case for accessing the JCR API in my application's code, correct? >> I want to know what my options are for deploying jackrabbit in it's >> own JVM, then connecting to it and coding agains the JCR API. Does >> SPI provide this? Surely, I can't get this from WEBDAV or Sling, can >> I? > > There are two Webdav implementations in Jackrabbit: one is the simple > webdav server which presents the repository like a file system, with > built-in support for nt:folder and nt:file and customizable handlers > for other nodetypes. Is the use case for this a webdav client browser? Can you provide a reference to this simple webdav server by it's Jackrabbit component name, or maven module? > > The other Webdav is the JCR webdav server, which provides the full JCR > API capabilities if used by a jcr2spi + spi2dav client setup. SPI = How is this webdav server supposed to differ from the one mentioned above? Is it meant to be used to remote the repository via JCR ( though the spi packages you mention above ), or is this just an add on? > service provider interface (yes, a quite generic name) is a simpler > version of the JCR API with the possibility of batch operations, > useful for improving performance over remoting. There is a generic In what way is this a simpler version of the API? Specifically, my application will need to make use of read, write of nodes, workspace operations, and version control. Are these things supported? > jcr2spi client that maps the JCR API onto the spi API. The spi2dav is > an spi API implementation that connects to the JCR webdav server, > which itself sits on top of the actual Jackrabbit repository (using > the JCR API itself). So, I would use the jcr2spi in my application, the client code if you will. And then I would use spi2dav on the webdav server? I had read that SPI was supposed to supplant the poorly performing JCR-RMI remoting. Is SPI only available as a layer over webdav? > > Regards, > Alex Thanks Alex. BTW, it seems like I'm going against the tide by trying to deploy my JCR as a data tier / remote resource to my application. Is this true? Perhaps I'm just unlucky enough to be treading the less traveled path?
