classloader问题,高分!!!急,在线
我的policy文件是:
grant{permission java.security.AllPermission;};
我扩展URLClassLoader实现自己的classloader。打算只让装载的类具有FilePermission权限读F:\\test.text,其他权限都没有。我重载了getPermissions方法 实现如下:
protected PermissionCollection getPermissions(CodeSource codesource)
{
PermissionCollection pc = null ;
pc.add(new FilePermission("F:\\test.text","read"));
return(pc);
}
但是不知道为什么这个重载的getPermissions函数好象没有运行,我装载的类还能读写其他的文件,请教大家着是为什么,我的目标怎么实现???谢谢!!!
问题点数:100、回复次数:4Top
1 楼jackkui(键 之 舞 者)回复于 2004-08-03 20:37:45 得分 20
PermissionCollection pc = null ;
这样直接使用不会出现问题吗?
会抛出异常吧,NullPointerException
null的应该先初始化吧Top
2 楼power_zh(专门在技术区灌水赚分)回复于 2004-08-03 20:51:20 得分 0
upTop
3 楼snjzb6149(菜鸟)回复于 2004-08-03 20:58:58 得分 0
我将代码改写成这样还是不行
protected PermissionCollection getPermissions(CodeSource codesource)
{
System.out.println("flag");
PermissionCollection pc = new Permissions() ;
pc.add(new FilePermission("F:\\test.text","read"));
return(pc);
}
而且我做的标记flag没有打印出来,好象这个函数根本就没有执行,不知道为什么Top
4 楼tiger_wkh52741(走走.跑跑.瞧瞧!)回复于 2004-08-04 09:14:50 得分 80
"我做的标记flag没有打印出来,好象这个函数根本就没有执行"
是不是是你程序结构调用的问题!你是否确认调用这个方法的程序没有异常?
还有这里应该生成一个PermissionCollection类型的实例
PermissionCollection pc = new PermissionCollection () ;Top




