You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@jackrabbit.apache.org by Yusuf Aaji <yu...@gmail.com> on 2010/12/05 10:56:02 UTC

Jackrabbit 2.1.2 on JBoss 4.2.3 using JCA and WebDAV

Hi,

I have deployed jackrabbit jca on jboss 4.2.3 and it is working fine and i
can access the repository using indi on my web app.

But when I deployed the jackrabbit web app to have webdav access to the
repository and configured the repository access servlet as required.

<servlet>
        <servlet-name>Repository</servlet-name>
        <description>
            This servlet provides other servlets and jsps a common way to
access
            the repository. The repository can be accessed via JNDI, RMI or
Webdav.
        </description>

<servlet-class>org.apache.jackrabbit.j2ee.RepositoryAccessServlet</servlet-class>

         <init-param>
            <param-name>repository-name</param-name>
            <param-value>java:jcr/local</param-value>
            <description>Repository Name that is used to retrieve it via
JNDI</description>
        </init-param>
        <load-on-startup>3</load-on-startup>
</servlet>

I keep getting this exception when I try to access the repository using web
dav

12:14:35,252 ERROR [org.apache.jackrabbit.j2ee.RepositoryAccessServlet] The
content repository is not available. Please check RepositoryAccessServlet
configuration in web.xml.
javax.servlet.ServletException: N/A
    at
org.apache.jackrabbit.j2ee.RepositoryAccessServlet.getRepository(RepositoryAccessServlet.java:302)
    at
org.apache.jackrabbit.j2ee.RepositoryAccessServlet.getRepository(RepositoryAccessServlet.java:321)
    at
org.apache.jackrabbit.j2ee.SimpleWebdavServlet.getRepository(SimpleWebdavServlet.java:42)
    at
org.apache.jackrabbit.webdav.simple.SimpleWebdavServlet.getDavSessionProvider(SimpleWebdavServlet.java:367)
    at
org.apache.jackrabbit.webdav.server.AbstractWebdavServlet.service(AbstractWebdavServlet.java:188)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
    ..............
12:14:35,253 ERROR [org.apache.jackrabbit.j2ee.RepositoryAccessServlet] The
content repository is not available. Please check RepositoryAccessServlet
configuration in web.xml.
javax.servlet.ServletException: N/A
    at
org.apache.jackrabbit.j2ee.RepositoryAccessServlet.getRepository(RepositoryAccessServlet.java:302)
    at
org.apache.jackrabbit.j2ee.RepositoryAccessServlet.getRepository(RepositoryAccessServlet.java:321)
    at
org.apache.jackrabbit.j2ee.SimpleWebdavServlet.getRepository(SimpleWebdavServlet.java:42)
    at
org.apache.jackrabbit.webdav.simple.SimpleWebdavServlet.getDavSessionProvider(SimpleWebdavServlet.java:367)
    at
org.apache.jackrabbit.webdav.server.AbstractWebdavServlet.service(AbstractWebdavServlet.java:209)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
    .............
12:14:35,253 ERROR [org.apache.catalina.core.ContainerBase]
Servlet.service() for servlet Webdav threw exception
java.lang.IllegalStateException: The repository is not available.
    at
org.apache.jackrabbit.j2ee.RepositoryAccessServlet.getRepository(RepositoryAccessServlet.java:309)
    at
org.apache.jackrabbit.j2ee.RepositoryAccessServlet.getRepository(RepositoryAccessServlet.java:321)
    at
org.apache.jackrabbit.j2ee.SimpleWebdavServlet.getRepository(SimpleWebdavServlet.java:42)
    at
org.apache.jackrabbit.webdav.simple.SimpleWebdavServlet.getDavSessionProvider(SimpleWebdavServlet.java:367)
    at
org.apache.jackrabbit.webdav.server.AbstractWebdavServlet.service(AbstractWebdavServlet.java:209)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
    ..............



I enabled log4j debug level logging and all I got is this:

12:15:34,032 INFO  [root] Logging initialized.
12:15:34,042 INFO  [org.apache.jackrabbit.j2ee.RepositoryAccessServlet]
RepositoryAccessServlet initialized.
12:15:34,075 INFO  [org.apache.jackrabbit.webdav.simple.SimpleWebdavServlet]
resource-path-prefix = '/repository'
12:15:34,075 INFO  [org.apache.jackrabbit.webdav.simple.SimpleWebdavServlet]
WWW-Authenticate header = 'Basic realm="Jackrabbit Webdav Server"'
12:15:34,252 DEBUG [org.apache.jackrabbit.webdav.jcr.JCRWebdavServerServlet]
resource-path-prefix = /server
12:15:34,252 DEBUG [org.apache.jackrabbit.webdav.jcr.JCRWebdavServerServlet]
authenticate-header = Basic realm="Jackrabbit Webdav Server"

can someone tell me what is wrong with my configuration?!

Re: Jackrabbit 2.1.2 on JBoss 4.2.3 using JCA and WebDAV

Posted by Yusuf Aaji <yu...@gmail.com>.
Sorry for that issue resolved.

I just modified the servlet config to:

<servlet>
        <servlet-name>Repository</servlet-name>
        <description>
            This servlet provides other servlets and jsps a common way to access

            the repository. The repository can be accessed via JNDI,
RMI or Webdav.
        </description>
        <servlet-class>org.apache.jackrabbit.j2ee.RepositoryAccessServlet</servlet-class>


        <init-param>
            <param-name>repository-name</param-name>
            <param-value>java:jcr/local</param-value>
            <description>Repository Name that is used to retrieve it
via JNDI</description>

        </init-param>
        <init-param>
            <param-name>java.naming.provider.url</param-name>
            <param-value>jnp://192.168.0.42:1099</param-value>

        </init-param>
        <init-param>
            <param-name>java.naming.factory.initial</param-name>
            <param-value>org.jnp.interfaces.NamingContextFactory</param-value>

        </init-param>

        <load-on-startup>3</load-on-startup>
    </servlet>

and it is OK now.

Thanks,