You are viewing a plain text version of this content. The canonical link for it is here.
Posted to ivy-user@ant.apache.org by Jeffrey Sinclair <je...@cooljeff.co.uk> on 2009/01/24 13:06:17 UTC
Ivy webapp friendlyness
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
Re: Ivy webapp friendlyness
Posted by Jeffrey Sinclair <je...@cooljeff.co.uk>.
Xavier,
Thanks for the quick response, as requested I've opened a JIRA:
https://issues.apache.org/jira/browse/IVY-1015
I'm hoping this will be as simple as creating an extra constructor with
a boolean flag to disable System property lookups but I have to admit
that I've not investigated all of the Ivy code to see if the problem is
isolated to this one class.
Regards,
Jeff
On Sat, 2009-01-24 at 19:31 +0100, Xavier Hanin wrote:
> On Sat, Jan 24, 2009 at 1:06 PM, Jeffrey Sinclair <je...@cooljeff.co.uk>wrote:
>
> > 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()?
>
> A flag would be a nice improvement. Could you open a jira issue?
>
> Xavier
>
>
> >
> >
> > Regards,
> >
> > Jeff
> >
> >
>
>
Re: Ivy webapp friendlyness
Posted by Xavier Hanin <xa...@gmail.com>.
On Sat, Jan 24, 2009 at 1:06 PM, Jeffrey Sinclair <je...@cooljeff.co.uk>wrote:
> 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()?
A flag would be a nice improvement. Could you open a jira issue?
Xavier
>
>
> Regards,
>
> Jeff
>
>
--
Xavier Hanin - 4SH France
BordeauxJUG co leader - http://www.bordeauxjug.org/
Blogger - http://xhab.blogspot.com/
Apache Ivy Creator - http://ant.apache.org/ivy/