ivy-users,

Recently I deployed a webapp that uses Ivy at runtime to resolve some
module information and obtained the following SecurityException:

java.security.AccessControlException: access denied
(java.util.PropertyPermission * read,write)
        
java.security.AccessControlContext.checkPermission(AccessControlContext.java:323)
        
java.security.AccessController.checkPermission(AccessController.java:546)
        java.lang.SecurityManager.checkPermission(SecurityManager.java:532)
        
java.lang.SecurityManager.checkPropertiesAccess(SecurityManager.java:1252)
        java.lang.System.getProperties(System.java:582)
        
org.apache.ivy.core.settings.IvySettings.addSystemProperties(IvySettings.java:294)
        org.apache.ivy.core.settings.IvySettings.<init>(IvySettings.java:290)
        org.apache.ivy.core.settings.IvySettings.<init>(IvySettings.java:212)

Often shared web containers prohibit calls to System.getProperties() which Ivy 
attempts to do when populating the 'bootstrap' variables.

Originally I was going to suggest that Ivy only accesses the System variables 
it needs to access via System.getProperty(String) but then realised that this 
is probably not possible because some variables are dynamically named.

Would it be possible to have some kind of flag in IvySettings that would 
prevent Ivy from trying to access System.getProperties()?

Regards,

Jeff

Reply via email to