在Solaris上的tomcat中读取对ROOT /父目录的访问权限

时间:2012-12-06 17:16:58

标签: java-ee tomcat solaris sunos

我在SunOS 5.10上运行tomcat7,并且我正在webapp / ROOT /目录下开发一个webapp。 我在应用程序中尝试查看webapp / foo目录是否在那里:

String invpath = application.getRealPath( "user" ) //I also use this for something else
String soapPath = invpath.substring( 0, invpath.indexOf( "ROOT/user" ) ) + "foo";
            out.print(soapPath);
            //test if SOAP is installed
            File soap = new File( soapPath );
            if( soap.exists() )   //this is the line he doesn't like much
            {//html code}

但是tomcat引诱我:

org.apache.jasper.JasperException: An exception occurred processing JSP page /content/home.jsp at line 83

java.security.AccessControlException: access denied ("java.io.FilePermission" "/path/to/tomcat/webapps/foo" "read")

目录的绝对路径是好的。

我对这个目录上的每个人都有读权限,当我在debian机器上运行这个代码时,它工作得很好......我几乎不知道Solaris / SunOS(但我确实知道linux很好),所以我的错误可能非常愚蠢!

1 个答案:

答案 0 :(得分:0)

因此看起来tomcat是使用-security参数启动的,除非在安全管理器配置文件(conf/catalina.policy)中提到,否则基本上会阻止访问几乎所有内容... 这里的文档:http://tomcat.apache.org/tomcat-7.0-doc/security-manager-howto.html