Does one of your apps have the Digester classes in its web app
classpath? Did you make any changes to the policy file?  What's appears
to be happening is that the version of the Digester loaded doesn't have
the appropriate runtime permissions to get another class's classloader.
This kind of thing comes up if you have local versions of Apache commons
jars deployed with a web app sometimes: The web app classloader gives
priority to the classes in the web apps classpath instead of immediately
delegating up the classloader tree, which in turn means that their
codebases have limited permissions.

You have several options:
1) Root out the copied jars, if you're not intentionally overriding them
2) Use a custom security manager to log missing permissions and their
codebases.  I wrote my own, because I couldn't get jchains to work (you
can try, though: http://jchains.org).  Writing your own is not that
hard.  Then modify the policy file appropriately.
2) Turn off the security manager.  This is tragically the most common
choice. 

Benjamin J. Armintor
Systems Analyst
ITS-Systems: Mainframe Group
University of Texas - Austin
tele: (512) 232-6562
email: [EMAIL PROTECTED]
 


-----Original Message-----
From: news [mailto:[EMAIL PROTECTED] On Behalf Of bort
Sent: Wednesday, March 31, 2004 11:25 AM
To: [EMAIL PROTECTED]
Subject: AccessControlException


Hi all

When we try to start up tomcat on our linux box, we get the following
scroll in our catalina.out file:

register('-//Apache Software Foundation//DTD Struts Configuration
1.0//EN',
'jar:file:/var/lib/tomcat4/webapps/RFP/WEB-INF/lib/struts.jar!/org/apach
e/st
ruts/resources/struts-config_1_0.dtd'
register('-//Sun Microsystems, Inc.//DTD Web Application 2.2//EN',
'jar:file:/var/lib/tomcat4/webapps/RFP/WEB-INF/lib/struts.jar!/org/apach
e/st
ruts/resources/web-app_2_2.dtd'
register('-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN',
'jar:file:/var/lib/tomcat4/webapps/RFP/WEB-INF/lib/struts.jar!/org/apach
e/st
ruts/resources/web-app_2_3.dtd'
Digester.getParser:
java.security.AccessControlException: access denied
(java.lang.RuntimePermission getClassLoader)
        at
java.security.AccessControlContext.checkPermission(AccessControlContext.
java
:269)
        at
java.security.AccessController.checkPermission(AccessController.java:401
)
        at
java.lang.SecurityManager.checkPermission(SecurityManager.java:524)
        at java.lang.ClassLoader.getParent(ClassLoader.java:1034)
        at
org.apache.catalina.loader.WebappClassLoader.toString(WebappClassLoader.
java
:888)
        at java.lang.String.valueOf(String.java:2131)
        at java.lang.StringBuffer.append(StringBuffer.java:370)
        at
javax.xml.parsers.FactoryFinder.findJarServiceProvider(FactoryFinder.jav
a:34
2)
        at javax.xml.parsers.FactoryFinder.find(FactoryFinder.java:226)
        at
javax.xml.parsers.SAXParserFactory.newInstance(SAXParserFactory.java:134
)
        at
org.apache.struts.digester.Digester.getParser(Digester.java:275)
        at org.apache.struts.digester.Digester.parse(Digester.java:755)
        at
org.apache.struts.action.ActionServlet.initMapping(ActionServlet.java:13
32)
        at
org.apache.struts.action.ActionServlet.init(ActionServlet.java:466)
        at javax.servlet.GenericServlet.init(GenericServlet.java:258)
        at
org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.jav
a:91
8)
        at
org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:810)
        at
org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.j
ava:
3279)
        at
org.apache.catalina.core.StandardContext.start(StandardContext.java:3421
)
        at
org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:785)
        at
org.apache.catalina.core.StandardHost.addChild(StandardHost.java:478)
        at
org.apache.catalina.core.StandardHost.install(StandardHost.java:738)
        at
org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:300)
        at
org.apache.catalina.startup.HostConfig.start(HostConfig.java:389)
        at
org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:23
2)
        at
org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSu
ppor
t.java:155)
        at
org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1131)
        at
org.apache.catalina.core.StandardHost.start(StandardHost.java:638)
        at
org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1123)
        at
org.apache.catalina.core.StandardEngine.start(StandardEngine.java:343)
        at
org.apache.catalina.core.StandardService.start(StandardService.java:388)
        at
org.apache.catalina.core.StandardServer.start(StandardServer.java:506)
        at org.apache.catalina.startup.Catalina.start(Catalina.java:781)
        at
org.apache.catalina.startup.Catalina.execute(Catalina.java:681)
        at
org.apache.catalina.startup.Catalina.process(Catalina.java:179)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.jav
a:39
)
        at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessor
Impl
.java:25)
        at java.lang.reflect.Method.invoke(Method.java:324)
        at
org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:243)


Can anyone tell us how to solve this problem?
bort




---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to