1

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 についてはかなりよく知っています)。 !

4

1 に答える 1

0

そのため、Tomcat は-security、Security Manager 構成ファイル ( ) に記載されていない限り、基本的にほとんどすべてへのアクセスを防止するパラメーターを使用して起動されたようですconf/catalina.policy... ドキュメントはこちら: http://tomcat.apache.org/tomcat-7.0-doc/security -manager-howto.html

于 2012-12-07T19:28:11.930 に答える