我有一个在 tomcat 5.5 上运行的 java 小程序。它已签名(-selfcert)。java.security.AccessControlException: access denied (java.lang.RuntimePermission createClassLoader)
当我的 Applet 尝试连接到 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;
};
没有结果。
好的,快速更新,添加:
grant{
permission java.security.AllPermission;
};
到本地 java.policy 文件修复问题。但那不是我要找的,小程序应该运行在一台带有 dafault java.policy 文件的普通机器上。所以它必须从代码中修复。