Tomcat 5.5 で Java アプレットを実行しています。署名されています (-selfcert)。java.security.AccessControlException: access denied (java.lang.RuntimePermission createClassLoader)
アプレットが Web サービスに接続しようとすると、まだ例外が発生します (既にこの行にあります)。
ws_locator = new My_WebserviceLocator(ws_adress + "?wsdl",
new javax.xml.namespace.QName("http://impl.webservice", "My_Webservice"));
ここにいくつかの同様の質問があるので、私はそれらを読みました:
はい、アプレットは署名されています。-verifyで確認しました。
Tomcat のセキュリティ例外かもしれませんが、catalina.policy に追加しました:
grant codeBase "file:/home/me/apache-tomcat-5.5.27/webapps/myapplet/-" { permission java.security.AllPermission; };
grant codeBase "file:/home/me/apache-tomcat-5.5.27/webapps/myapplet/applet.jar" { permission java.security.AllPermission; };
そして、次のような通常のものもそこにあります:
grant codeBase "file:${java.home}/jre/lib/ext/-" {
permission java.security.AllPermission;
};
結果なし。
OK、簡単な更新、追加:
grant{
permission java.security.AllPermission;
};
ローカルの java.policy ファイルに追加すると、問題が修正されます。しかし、それは私が探しているものではありません。アプレットは、dafault java.policy ファイルを使用して、平均的なマシンで実行する必要があります。したがって、コード内から修正する必要があります。