For implementing some of the JCR specs in Jackalope, we needed a simple way to sniff the HTTP traffic jackrabbit expects (via the davex protocol). So I resurrected an old java thingie I once wrote. This may be helpful to implement the missing parts of Jackalope and can be found here github.com/jackalope/JavaDavexClient

From the README:

The HTTP protocol Jackrabbit is using in spi2davex (for communicating between client and server) was documented, but is quite outdated in the meantime.

Therefore the best way to see, what jackrabbit is actually doing is using a client (in java) which uses the davex layer and sniff that (with eg. wireshark or Charles Proxy)

Now you can write your JCR operations you want to implement in src/Client.java and then see what happens

USAGE


  • adjust Client.java and ch/liip/jcr/davex/DavexClient.java (for the connection parameters) in src/
  • Point to your jackrabbit-standalone-*.jar in buildandrun.sh
  • then run buildandrun.sh
  • and watch the traffic

And here's a little more complex example:

github.com/jackalope/JavaDavexClient/blob/master/examples/Versioning-Client.java