Ubuntu的Tomcat~
ubuntu的tomcat感觉安装起来很方便,但是没想到用起来感觉和Windows上的还是不太一样……
今天项目需要用Oracle的ojdbc.jar,在Windows上一切顺利,但是把项目复制到ubuntu的tomcat上就不行了,总是提示这个错误:
java.security.AccessControlException: access denied (java.lang.RuntimePermission getClassLoader)
google了一下总是说policy有问题,让自己去修改,但是没有搞清楚怎么修改,后来继续google,看到原来很简单,只是配置一下就行,有两个办法:
1 修改/etc/init.d/tomcat6 这个脚本,将其中的TOMCAT_SECURITY改为no。这个简单,一下就好了。
2 修改policy文件,/etc/tomcat6/policy.d/50local.policy,看看注释,自己修改一下,比如增加以下的内容:
// The permissions granted to the context WEB-INF/classes directory
grant codeBase "file:${catalina.base}/webapps/projectA/WEB-INF/classes/-" {
permission java.security.AllPermission;
};// The permissions granted to the context WEB-INF/lib directory
grant codeBase "file:${catalina.base}/webapps/projectA/WEB-INF/lib/-" {
permission java.security.AllPermission;
};
看着和mysql的赋权语句类似,就是给webapps/projectA的所有引用jar还有classes都赋权了。
问题解决
最后感谢引文:
Tomcat – java.security.AccessControlException: access denied (logging.properties read)
Ubuntu下Tomcat 6安全配置policy策略:
http://hi.baidu.com/lane727/blog/item/4a7275d161331938970a16cc.html