applet访问本地资源,需要修改jre的java.policy

本文介绍了解决Java应用中因安全策略限制导致的访问被拒绝异常问题的方法。通过调整Java的安全策略文件,允许对file.encoding属性进行读取,解决了XP及Win7系统下出现的应用异常。

Java Plug-in 1.6.0_22
使用 JRE 版本 1.6.0_22-b04 Java HotSpot(TM) Client VM
用户主目录 = C:\Documents and Settings\Administrator
----------------------------------------------------
c:   清除控制台窗口
f:   终结在结束队列上的对象
g:   垃圾收集
h:   显示此帮助消息
l:   转储类载入程序列表
m:   打印内存使用
o:   触发日志记录
q:   隐藏控制台
r:   重新载入策略配置
s:   转储系统和部署属性
t:   转储线程列表
v:   转储线程堆栈
x:   清除类载入程序高速缓存
0-5: 设置跟踪级别为<n>
----------------------------------------------------


java.security.AccessControlException: access denied (java.util.PropertyPermission file.encoding read)
    at java.security.AccessControlContext.checkPermission(Unknown Source)
    at java.security.AccessController.checkPermission(Unknown Source)
    at java.lang.SecurityManager.checkPermission(Unknown Source)
    at java.lang.SecurityManager.checkPropertyAccess(Unknown Source)
    at java.lang.System.getProperty(Unknown Source)
    at org.apache.tools.zip.ZipEncodingHelper.isUTF8(ZipEncodingHelper.java:246)
    at org.apache.tools.zip.ZipEncodingHelper.getZipEncoding(ZipEncodingHelper.java:214)
    at org.apache.tools.zip.ZipOutputStream.<init>(ZipOutputStream.java:236)
    at com.smapp.service.exchange.web.upload.zip.ZipBean.<init>(ZipBean.java:39)
    at com.smapp.service.exchange.web.upload.MainPanel$3.<init>(MainPanel.java:443)
    at com.smapp.service.exchange.web.upload.MainPanel.zipFile(MainPanel.java:443)
    at com.smapp.service.exchange.web.upload.MainPanel.access$3(MainPanel.java:440)
    at com.smapp.service.exchange.web.upload.MainPanel$2.run(MainPanel.java:364)
java.lang.NullPointerException
    at com.smapp.service.exchange.web.upload.zip.ZipBean.makeZipSize(ZipBean.java:87)
    at com.smapp.service.exchange.web.upload.zip.ZipBean.getMaxProcessValue(ZipBean.java:108)
    at com.smapp.service.exchange.web.upload.MainPanel.zipFile(MainPanel.java:450)
    at com.smapp.service.exchange.web.upload.MainPanel.access$3(MainPanel.java:440)
    at com.smapp.service.exchange.web.upload.MainPanel$2.run(MainPanel.java:364)
2010-12-14 16:51:59 com.smapp.service.exchange.web.upload.zip.ZipBean getMaxProcessValue
信息: 总体进度:0
java.lang.NullPointerException
    at com.smapp.service.exchange.web.upload.zip.ZipBean.closeZip(ZipBean.java:57)
    at com.smapp.service.exchange.web.upload.MainPanel.zipFile(MainPanel.java:455)
    at com.smapp.service.exchange.web.upload.MainPanel.access$3(MainPanel.java:440)
    at com.smapp.service.exchange.web.upload.MainPanel$2.run(MainPanel.java:364)

xp、win7系统下面会出现改问题,修改
c:\Program Files\Java\jdk1.6.0_21\jre\lib\security\java.policy
最后增加一行代码:
permission java.util.PropertyPermission "file.encoding", "read";
};

Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException at java.awt.Container.addImpl(Container.java:1095) at java.awt.Container.add(Container.java:975) at nc.starter.ui.AppletViewer$3.done(AppletViewer.java:123) at javax.swing.SwingWorker$5.run(SwingWorker.java:737) at javax.swing.SwingWorker$DoSubmitAccumulativeRunnable.run(SwingWorker.java:832) at sun.swing.AccumulativeRunnable.run(AccumulativeRunnable.java:112) at javax.swing.SwingWorker$DoSubmitAccumulativeRunnable.actionPerformed(SwingWorker.java:842) at javax.swing.Timer.fireActionPerformed(Timer.java:313) at javax.swing.Timer$DoPostEvent.run(Timer.java:245) at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:311) at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:758) at java.awt.EventQueue.access$500(EventQueue.java:97) at java.awt.EventQueue$3.run(EventQueue.java:709) at java.awt.EventQueue$3.run(EventQueue.java:703) at java.security.AccessController.doPrivileged(Native Method) at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:74) at java.awt.EventQueue.dispatchEvent(EventQueue.java:728) at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:205) at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116) at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93) at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)
10-12
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值