【问题标题】:Tomcat 7 web configurationTomcat 7 网页配置
【发布时间】:2015-08-27 16:28:49
【问题描述】:

我们的 unix 服务器中有 tomcat 7.0.55。我们已经在 tomcat 实例的 webapps 文件夹中手动部署了 web 应用程序。默认情况下,clusterinfo.1200.properties 和 log4j 日志存储在运行 tomcat 的用户帐户主目录下的 .businessobjects 文件夹中。

在访问 InfoView Web 应用程序时,我们收到以下错误,

"AccessControlException:"java.io.filePermission:Access Denied \home\<user account of tomcat>\.businessobjects\clusterinfo.properties"

Tomcat 7 有限制在第一次登录时访问 tomcat 目录之外的文件。但是在刷新页面时,我们可以访问应用程序。

我已经尝试了以下步骤。

  1. 停止了 tomcat 实例
  2. 已将 .buisnessobjects 从主目录移至内部 tomcat 安装目录。
  3. 在主目录中将符号链接创建为 .businessobjects 以指向 tomcat 目录中的文件夹。
  4. 启动了 tomcat 实例。

它有效。但我需要知道在 web 应用程序中必须在哪里进行配置更改才能将 clusterinfo 属性文件和 log4j 文件放在 tomcat 目录中。

我是 Java 新手。请让我知道文件及其位置以进行此更改。

拼命寻找解决方案:-(

【问题讨论】:

    标签: java unix tomcat7 sap business-objects


    【解决方案1】:

    您是否尝试使用chmod 对该文件授予更多权限。 该异常明确表示其java.io.filePermission。所以问题是 jvm 无法读取您的属性文件,因为您的操作系统根据文件权限阻止它这样做。 您可以使用ls -l filepath 查看文件权限。 我隐约记得您必须更改已访问文件的所有者才能使 tomcat 工作,因此chown tomcat7 \home\&lt;user account of tomcat&gt;\.businessobjects\clusterinfo.properties 不会受到伤害,但我不记得它是否仅适用于像 *.war 文件等已部署的工件。

    【讨论】:

    • 我尝试将文件权限模式 chmod 777 赋予主目录中的 .business objects 文件夹。 Tomcat 使用的所有者与主目录中访问的文件(.business 对象)的所有者相同。我注意到 Web 应用程序无法访问 tomcat 目录之外的任何文件夹。
    • 仅授予目录文件权限是不够的。您应该在所需文件上明确chmod(在您的情况下为clusterinfo.properties,因为我假设您没有chmod 带有-R 选项的目录?)。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-01-09
    • 2018-08-01
    • 2012-03-26
    • 1970-01-01
    • 2015-05-27
    • 2012-02-07
    • 2017-01-27
    相关资源
    最近更新 更多