java.security.AccessControlException: доступ запрещен (чтение java.util.PropertyPermission jna.boot.library.path)

У меня возникли проблемы с запуском моего подписанного веб-апплета,

он отлично работает в Eclipse, но как только я загружаю веб-страницу, я получаю этот журнал ошибок:

Exception in thread "AWT-EventQueue-2" java.lang.ExceptionInInitializerError
at com.dermalog.imaging.capturing.cwrap.vc.DermalogvcLibrary.<clinit>(DermalogvcLibrary.java:30)
at com.dermalog.imaging.capturing.DeviceManager.<clinit>(DeviceManager.java:33)
at MyPackage.Bio.GetDevice(Bio.java:218)
at MyPackage.Bio.StartDevice(Bio.java:150)
at MyPackage.Bio.access$0(Bio.java:144)
at MyPackage.Bio$1.run(Bio.java:80)
at java.security.AccessController.doPrivileged(Native Method)
at MyPackage.Bio.<init>(Bio.java:76)
at MyPackage.Test$2.actionPerformed(Test.java:45)
at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(Unknown Source)
at java.awt.Component.processMouseEvent(Unknown Source)
at javax.swing.JComponent.processMouseEvent(Unknown Source)
at java.awt.Component.processEvent(Unknown Source)
at java.awt.Container.processEvent(Unknown Source)
at java.awt.Component.dispatchEventImpl(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
at java.awt.EventQueue.access$200(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
at java.awt.EventQueue$4.run(Unknown Source)
at java.awt.EventQueue$4.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
at java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.run(Unknown Source)
Caused by: java.security.AccessControlException: access denied("java.util.PropertyPermission" "jna.boot.library.path" "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 com.sun.jna.Native.loadNativeLibrary(Native.java:650)
at com.sun.jna.Native.<clinit>(Native.java:109)
... 44 more

Я считаю, что это проблема выхода из песочницы и связи с компьютером.

Может ли использование AccessController.doPrivileged решить проблему? Какие у меня есть варианты, кроме изменения файла политики?


person Corne    schedule 17.04.2013    source источник
comment
Может ли использование AccessController.doPrivileged решить проблему? Возможно, но только если это доверенный апплет, методы которого вызываются из JS. В противном случае ему следует доверять, как только пользователь подтверждает запрос на доверие.   -  person Andrew Thompson    schedule 17.04.2013


Ответы (1)


Оказывается, проблема, с которой я столкнулся, заключалась в том, что мои ссылочные файлы Jar (вне основного Jar) не были подписаны, и после их подписания проблема исчезла.

person Corne    schedule 18.04.2013