You are viewing a plain text version of this content. The canonical link for it is here.
Posted to wsif-dev@ws.apache.org by "Henry Chan (JIRA)" <ws...@ws.apache.org> on 2005/07/13 01:18:10 UTC

[jira] Commented: (WSIF-70) Axis Client crashes the applet unless new permissions are added to the policy file (or a custom security manager is used)

    [ http://issues.apache.org/jira/browse/WSIF-70?page=comments#action_12315639 ] 

Henry Chan commented on WSIF-70:
--------------------------------

Definitely doesn't work with 1.5 in Applet mode, I wonder does it work as an application
under 1.5?  Tried it with 1.4.2 and it works fine:
http://people.apache.org/~hchan/wsInvoker/wsInvokerApplet.html

I'll definitely look at 1.5 as soon as I get freed up

> 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