Axis Client crashes the applet unless new permissions are added to the policy
file (or a custom security manager is used)
-------------------------------------------------------------------------------------------------------------------------
Key: WSIF-70
URL: http://issues.apache.org/jira/browse/WSIF-70
Project: Axis-WSIF
Type: Bug
Components: Basic Architecture
Versions: current (nightly)
Environment: WindowsXP, Sun jdk1.5.0_03 (running client inside an applet),
Axis 1.2.1, commons-logging-1.0.4, commons-httpclient-3.0-rc3, using ant 1.6.5
and a laptop IBM Thinkpad R51
Reporter: Luis Rivera
Priority: Blocker
To solve the following kind of exceptions,
***********************************************************************************************************
java.lang.ExceptionInInitializerError
at org.apache.commons.discovery.jdk.JDKHooks.<clinit>(JDKHooks.java:75)
at
org.apache.commons.discovery.tools.DiscoverSingleton.find(DiscoverSingleton.java:412)
at
org.apache.commons.discovery.tools.DiscoverSingleton.find(DiscoverSingleton.java:378)
at
org.apache.axis.components.logger.LogFactory$1.run(LogFactory.java:45)
at java.security.AccessController.doPrivileged(Native Method)
at
org.apache.axis.components.logger.LogFactory.getLogFactory(LogFactory.java:41)
at
org.apache.axis.components.logger.LogFactory.<clinit>(LogFactory.java:33)
at org.apache.axis.handlers.BasicHandler.<clinit>(BasicHandler.java:43)
at org.apache.axis.client.Service.getAxisClient(Service.java:103)
at org.apache.axis.client.Service.<init>(Service.java:112)
at vcas.gui.wsdl.VCASLocator.<init>(Unknown Source)
at vcas.gui.vss.VSSApplet.init(Unknown Source)
at sun.applet.AppletPanel.run(AppletPanel.java:374)
at java.lang.Thread.run(Thread.java:595)
Caused by: java.security.AccessControlException: access denied
(java.lang.RuntimePermission createClassLoader)
at
java.security.AccessControlContext.checkPermission(AccessControlContext.java:264)
at
java.security.AccessController.checkPermission(AccessController.java:427)
at java.lang.SecurityManager.checkPermission(SecurityManager.java:532)
at
java.lang.SecurityManager.checkCreateClassLoader(SecurityManager.java:594)
at java.lang.ClassLoader.<init>(ClassLoader.java:225)
at
org.apache.commons.discovery.jdk.PsuedoSystemClassLoader.<init>(PsuedoSystemClassLoader.java:73)
at
org.apache.commons.discovery.jdk.JDK12Hooks.findSystemClassLoader(JDK12Hooks.java:215)
at
org.apache.commons.discovery.jdk.JDK12Hooks.<clinit>(JDK12Hooks.java:73)
... 14 more
*********************************************************************************************************************************
I had to add the following permissions to a custom policy file.
********************************************************************************************************************************
permission java.lang.RuntimePermission "createClassLoader";
permission java.lang.RuntimePermission "getClassLoader";
permission java.util.PropertyPermission
"org.apache.commons.discovery.log.level", "read";
permission java.util.PropertyPermission
"axis.EngineConfigFactory","read";
permission java.util.PropertyPermission
"org.apache.axis.EngineConfigurationFactory","read";
permission java.util.PropertyPermission "axis.ClientConfigFile","read";
permission java.util.PropertyPermission "axis.ServerConfigFile","read";
permission java.util.PropertyPermission "axis.xml.reuseParsers","read";
permission java.util.PropertyPermission
"axis.attachments.implementation","read";
********************************************************************************************************************************
So, I see that part of the problem is appache commons logger and other
libraries trying to read and write to files, including the commons logger used
by axis. I wanted to know if there is a simple way to prevent this or if I
there exist a version of the Axis library without these issues, so it can
happily work inside the sandbox with the default permissions, I would be happy
to try it.
Thanks in advance,
--Luis R.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira