The last hurdle in my slide to jackrabbit adventure is in the mapping of the 
URL in jetty. As I said before, the goal was to simply replace slide with jetty 
and to not have to change code.

In the jetty config the context for slide was set up as follows:
    <New id="SlideContext" class="org.mortbay.jetty.webapp.WebAppContext">
                        <Arg><Ref id="contexts"/></Arg>
      <Arg><SystemProperty name="jetty.home" default="."/>/webapps/slide/</Arg>
      <Arg>/MyRepository</Arg>
    </New>

So any requests to http://hostname:port/MyRepository went to slide and I assume 
that slide just had one repository that contained all the files that are being 
requested via WEBDAV.

For jackrabbit I have created a repository named MyRepository, changed the 
web.xml in the jackrabbit-webapp-1.4.war to not require the /repository (as you 
have helped me to understand) and set up a context for jackrabbit as follows:
    <New id="JackRabbitContext" class="org.mortbay.jetty.webapp.WebAppContext">
                        <Arg><Ref id="contexts"/></Arg>
      <Arg><SystemProperty name="jetty.home" 
default="."/>/webapps/jackrabbit-webapp-1.4.war</Arg>
      <Arg>/</Arg>
    </New>

And this works great for accessing the content from MyRepository using the same 
URL http://hostname:port/MyRepository, so no code needs to be changed. The 
obvious problem with this is that to get it to work I needed to comment out the 
home page context:
<!--
   <New id="HomeContext" class="org.mortbay.jetty.webapp.WebAppContext">
      <Arg><Ref id="contexts"/></Arg>
      <Arg><SystemProperty name="jetty.home" default="."/>/webapps/mqs/</Arg>
      <Arg>/</Arg>
    </New>
-->
so that all requests would go to jackrabbit. But I need the home context too. 
If I set the context for jackrabbit to map to /MyRepository, then requests to 
http://hostname:port/MyRepository generate HTTP ERROR:500's.

I realize that this is probably more of a jetty config puzzle, but any help 
that you can give would be greatly appreciated.

Thanks

Reply via email to