【问题标题】:Tomcat 6 refuses a valid docBaseTomcat 6 拒绝有效的 docBase
【发布时间】:2011-08-15 02:11:24
【问题描述】:

这是我的 webapp 上下文文件,/etc/tomcat6/Catalina/localhost/ri.xml

<Context docBase="/home/bart/Dropbox/projects/RevoraIndieSite/webapp" reloadable="true">

</Context>

但是,Tomcat 抱怨:

INFO: Deploying configuration descriptor ri.xml
28-Apr-2011 23:44:04 org.apache.catalina.core.StandardContext resourcesStart
SEVERE: Error starting static Resources
java.lang.IllegalArgumentException: Document base /home/bart/Dropbox/projects/RevoraIndieSite/webapp does not exist or is not a readable directory
    at org.apache.naming.resources.FileDirContext.setDocBase(FileDirContext.java:142)
    at org.apache.catalina.core.StandardContext.resourcesStart(StandardContext.java:4249)
    at org.apache.catalina.core.StandardContext.start(StandardContext.java:4418)
    at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791)
    at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771)
    at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:546)
    at org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java:637)
    at org.apache.catalina.startup.HostConfig.deployDescriptors(HostConfig.java:563)
    at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:498)
    at org.apache.catalina.startup.HostConfig.check(HostConfig.java:1345)
    at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:303)
    at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119)
    at org.apache.catalina.core.ContainerBase.backgroundProcess(ContainerBase.java:1337)
    at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1601)
    at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1610)
    at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.run(ContainerBase.java:1590)
    at java.lang.Thread.run(Thread.java:636)
28-Apr-2011 23:44:04 org.apache.catalina.core.StandardContext start
SEVERE: Error in resourceStart()
28-Apr-2011 23:44:04 org.apache.catalina.core.StandardContext start
SEVERE: Error getConfigured
28-Apr-2011 23:44:04 org.apache.catalina.core.StandardContext start
SEVERE: Context [/ri] startup failed due to previous errors
28-Apr-2011 23:44:04 org.apache.catalina.core.StandardContext stop
INFO: Container org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/ri] has not been started

但是该目录存在,并且每个人都可以阅读。

bart@bart-laptop:~$ ls -l /home/bart/Dropbox/projects/RevoraIndieSite
total 36
drwxr-xr-x 3 bart bart 4096 2011-04-20 20:46 bin
drwxr-xr-x 3 bart bart 4096 2011-04-27 23:11 bin-tools
-rw-r--r-- 1 bart bart  971 2011-04-27 23:15 build.xml
drwxr-xr-x 4 bart bart 4096 2011-03-30 22:42 export
-rw-r--r-- 1 bart bart  290 2011-03-30 22:36 ivysettings.xml
-rw-r--r-- 1 bart bart 1214 2011-04-27 23:08 ivy.xml
drwxr-xr-x 4 bart bart 4096 2011-04-28 23:33 src
drwxr-xr-x 3 bart bart 4096 2011-04-27 22:09 src-tools
drwxr-xr-x 3 bart bart 4096 2011-02-27 17:33 webapp

这是来自 Ubuntu 10.10 存储库的默认 Tomcat 6 安装,没有其他更改。

【问题讨论】:

  • server.xmlhost 元素的appbase 是什么?它是您的docBase 的父母吗?
  • @matt:默认/var/lib/tomcat6/webapps,所以没有父级。

标签: java tomcat servlets tomcat6


【解决方案1】:

webapp 目录也需要写权限。此外,将此目录的所有者设置为与运行 tomcat 实例相同的所有者是一个好习惯(如果我没记错的话,它是 ubuntu 上的 tomcat6 用户) 所以试试
chown -R tomcat6:tomcat6 webapps
或为其他人授予 webapps forlder 写权限
chmod 766 webapps

【讨论】:

  • 我可以尝试授予写入权限,但为什么需要它们?我以前在相同的配置中运行过这个应用程序,它工作正常。
  • 我发现了问题,确实是有权限的东西,但不能写。结果Dropbox 需要+rx。奇怪,我认为 webapp 拥有 rx 应该就足够了。
  • 好吧,我现在有了完美的解决方案。我现在不是在我自己的用户下编辑应用程序并在系统范围的 Tomcat 服务上测试它,而是将它部署到在我的用户下运行的手动启动的 Tomcat 实例。使编辑配置文件等变得更容易。
  • @Bart van Heukelom:它需要对“webapps”的写入权限,以便它可以部署/取消部署 web-apps。
  • @EJP:我想这取决于应用程序,但我制作的那些只能通过读取访问正常运行。 Tomcat 不需要在 webapp 的目录中写入任何内容。日志、温度等都在它之外的某个地方。
【解决方案2】:

您很可能在conf/Catalina/[host]目录中有一个ri.xml 文件和ri 目录,这是上一次部署尝试遗留下来的。检查并删除它。

【讨论】:

    猜你喜欢
    • 2017-11-15
    • 2023-03-19
    • 2019-03-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-05-13
    • 2012-08-13
    • 1970-01-01
    相关资源
    最近更新 更多