Java Apache jackrabbit:使用JNDI检索存储库时出错

Java Apache jackrabbit:使用JNDI检索存储库时出错,java,linux,jackrabbit,Java,Linux,Jackrabbit,我正在Linux机器上设置ApacheJackrabbit存储库,当我的服务器启动时,我收到以下错误消息 错误RepositoryAccessServlet:使用JNDI(name=jackrabbit.repository)检索存储库时出错(RepositoryAccessServlet.java, 第210行)以及NameNotFoundException 下面是完整的堆栈跟踪 14.08.2012 16:35:37错误RepositoryAccessServlet:使用JNDI检索存储库时

我正在Linux机器上设置ApacheJackrabbit存储库,当我的服务器启动时,我收到以下错误消息

错误RepositoryAccessServlet:使用JNDI(name=jackrabbit.repository)检索存储库时出错(RepositoryAccessServlet.java, 第210行)以及NameNotFoundException

下面是完整的堆栈跟踪

14.08.2012 16:35:37错误RepositoryAccessServlet:使用JNDI检索存储库时出错(name=jackrabbit.repository)(RepositoryAccessServlet.java,第210行) javax.naming.NameNotFoundException 位于org.apache.jackrabbit.core.jndi.provider.DummyContext.getBoundObject(DummyContext.java:83) 位于org.apache.jackrabbit.core.jndi.provider.DummyContext.lookup(DummyContext.java:248) 位于org.apache.jackrabbit.core.jndi.provider.DummyContext.lookup(DummyContext.java:255) 位于javax.naming.InitialContext.lookup(未知源) 位于org.apache.jackrabbit.j2ee.RepositoryAccessServlet.getRepositoryByJNDI(RepositoryAccessServlet.java:206) 位于org.apache.jackrabbit.j2ee.RepositoryAccessServlet.getRepository(RepositoryAccessServlet.java:295) 位于org.apache.jackrabbit.j2ee.RepositoryAccessServlet.getRepository(RepositoryAccessServlet.java:321) 在org.apache.jsp.welcome\u jsp.\u jsp服务(welcome\u jsp.java:62) 位于org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70) 位于javax.servlet.http.HttpServlet.service(HttpServlet.java:717) 位于org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:388) 位于org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313) 位于org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260) 位于javax.servlet.http.HttpServlet.service(HttpServlet.java:717) 位于org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) 位于org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) 位于org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:646) 位于org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:436) 位于org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:374) 位于org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:302) 位于org.apache.jasper.runtime.PageContextImpl.doForward(PageContextImpl.java:709) 位于org.apache.jasper.runtime.PageContextImpl.forward(PageContextImpl.java:680) 在org.apache.jsp.index\u jsp.\u jsp服务(index\u jsp.java:61)上 位于org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70) 位于javax.servlet.http.HttpServlet.service(HttpServlet.java:717) 位于org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:388) 位于org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313) 位于org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260) 位于javax.servlet.http.HttpServlet.service(HttpServlet.java:717) 位于org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) 位于org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) 位于org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) 位于org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191) 位于org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127) 位于org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) 位于org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) 位于org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293) 位于org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:859) 位于org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:602) 位于org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489) 位于java.lang.Thread.run(未知源) 14.08.2012 16:35:37*信息*RepositoryAccessServlet:尝试使用rmi检索存储库。uri=//localhost:1099/jackrabbit.repository(RepositoryAccessServlet.java,第231行) 14.08.2012 16:35:37*信息*RepositoryAccessServlet:通过RMI获取的存储库。(RepositoryAccessServlet.java,第243行)

在谷歌上搜索抛出的异常后,我找不到任何相关的东西

有人能指出哪里出了问题吗


任何帮助都将不胜感激。

我已经解决了这个问题

问题在于目录结构上的权限。Tomcat没有足够的权限访问所需的目录结构。在我的例子中,我得到了名为jackrabbit.reposiory的存储库的错误,我的目录结构类似于jackrabbit/repository

一旦我确定tomcat在这些目录上拥有足够的权限(在我的例子中,写权限不足),事情就开始朝着正确的方向发展