2017-08-25 11 views
0

tomcat 7.0.65に.warアプリケーションがデプロイされています。このアプリケーションは、ポリゴン・ファイルの束がリソースディレクトリにあるライブラリを使用します。ライブラリが呼び出されるたびに、展開されたwarディレクトリのjarファイルに対してファイルアクセス許可例外がスローされます。ここTomcat展開されたwarディレクトリのリソースファイルへのアクセスを拒否する

は誤りです:

コードでこの行でスローされ
Caused by: java.security.AccessControlException: access denied ("java.io.FilePermission" "/var/lib/tomcat7/webapps/**/WEB-INF/lib/table-service-1.37.jar" "read") 
    at org.apache.catalina.loader.WebappClassLoaderBase.getResourceAsStream(WebappClassLoaderBase.java:1659) ~[catalina-7.0.65.jar:7.0.65] 
    at com.**.PropertyGeometryDAO.initialize(PropertyGeometryDAO.java:47) ~[table-service-1.37.jar:?] 

:ここ

try (InputStream stream = getClass().getClassLoader().getResourceAsStream(fileName)) 

はパーミッションを定義するcatalina.policyファイルです:

permission java.io.FilePermission "/usr/share/tomcat7/webapps/*", "read"; 

私たちは、別の.warを同じTomcatに配備し、同じライブラリを使ってうまく動作するようにしてください。

+0

のためにあるのですか? https://tomcat.apache.org/tomcat-7.0-doc/security-manager-howto.html#Tomcat_Custom_Permissions – nullpointer

答えて

0

例外が

"/var/lib/tomcat7/webapps/**/WEB-INF/lib/table-service-1.37.jar" 

のためですが、あなたの許可がどのように両方の読み取り、WITEアセスをspecifiyingについて

permission java.io.FilePermission "/usr/share/tomcat7/webapps/*", "read"; 
+0

私は含まれているはずです。/ usr/share/tomcat7/webapps - >/var/lib/tomcat7/webapps – user1308752

+0

readLink FilePermissionが必要な場合があります。https://docs.oracle.com/javase/7/docs/api/java/io/FilePermission.html – mikep

関連する問題