<DIV>Hi,</DIV> <DIV> My J2EE application uses DROOLS 3.0.6 libraries for rules and runs on SUN JES 2005 Q4 server.</DIV> <DIV>I am getting the exception : <BR>Caused by: java.security.AccessControlException: access denied (java.lang.RuntimePermission createClassLoader)</DIV> <DIV>Currently I have granted RunTimePermission for "createClassLoader" in the global area (i.e for all jars) of server.policy and the application works fine. </DIV> <DIV>But I want to specify the permissions for "only" drools and the dependent jars. <BR>Please let me know the list of jars which requires createClassLoader - RunTimePermission .</DIV> <DIV>The complete stack trace is given below: </DIV> <DIV><BR>Regards<BR>Smitha</DIV> <DIV> </DIV> <DIV>--------------------------------------------------------------------------------------------------------------</DIV> <DIV><BR>(java.lang.RuntimePermission createClassLoader)<BR> at
com.abc.rules.jboss.DroolsContainer.buildRuleBase(DroolsContainer.java:217)<BR> at com.abc.rules.jboss.DroolsContainer.init(DroolsContainer.java:91)<BR> at com.abc.rules.EnvironmentManager.initContainer(EnvironmentManager.java:252)<BR> at com.abc.rules.EnvironmentManager.init(EnvironmentManager.java:158)<BR> at com.abc.rules.PDMImpl.ejbCreate(PDMImpl.java:224)<BR> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)<BR> at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)<BR> at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)<BR> at java.lang.reflect.Method.invoke(Method.java:585)<BR> at </DIV> <DIV>com.sun.ejb.containers.StatelessSessionContainer.createStatelessEJB(StatelessSessionContainer.java:4<BR>10)<BR> at </DIV> <DIV>com.sun.ejb.containers.StatelessSessionContainer.access$100(StatelessSessionContainer.java:75)<BR> at </DIV>
<DIV>com.sun.ejb.containers.StatelessSessionContainer$SessionContextFactory.create(StatelessSessionContai</DIV> <DIV>ner.java:597)<BR> at com.sun.ejb.containers.util.pool.NonBlockingPool.getObject(NonBlockingPool.java:168)<BR> at </DIV> <DIV>com.sun.ejb.containers.StatelessSessionContainer._getContext(StatelessSessionContainer.java:359)<BR> at com.sun.ejb.containers.BaseContainer.getContext(BaseContainer.java:1072)<BR> at com.sun.ejb.containers.BaseContainer.preInvoke(BaseContainer.java:772)<BR> at </DIV> <DIV>com.sun.ejb.containers.EJBLocalObjectInvocationHandler.invoke(EJBLocalObjectInvocationHandler.java:1</DIV> <DIV>26)<BR> at com.abc.sms.SendSmsImpl.sendSms(SendSmsImpl.java:654)<BR> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)<BR> at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)<BR> at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)<BR> at java.lang.reflect.Method.invoke(Method.java:585)<BR> at com.sun.enterprise.security.SecurityUtil$2.run(SecurityUtil.java:153)<BR> at java.security.AccessController.doPrivileged(Native Method)<BR> at </DIV> <DIV>com.sun.enterprise.security.application.EJBSecurityManager.doAsPrivileged(EJBSecurityManager.java:95</DIV> <DIV>0)<BR> at com.sun.enterprise.security.SecurityUtil.invoke(SecurityUtil.java:158)<BR> at </DIV> <DIV>com.sun.ejb.containers.WebServiceInvocationHandler.invoke(WebServiceInvocationHandler.java:116)<BR> at $Proxy34.sendSms(Unknown Source)<BR> at </DIV> <DIV>com.sun.enterprise.webservice.EjbWebServiceDispatcher.handlePost(EjbWebServiceDispatcher.java:140)<BR> at </DIV> <DIV>com.sun.enterprise.webservice.EjbWebServiceDispatcher.invoke(EjbWebServiceDispatcher.java:79)<BR> at </DIV>
<DIV>com.sun.enterprise.webservice.EjbWebServiceValve.dispatchToEjbEndpoint(EjbWebServiceValve.java:187)<BR> at com.sun.enterprise.webservice.EjbWebServiceValve.invoke(EjbWebServiceValve.java:131)<BR> at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:542)<BR> at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:933)<BR> at </DIV> <DIV>com.sun.enterprise.web.connector.httpservice.HttpServiceProcessor.process(HttpServiceProcessor.java:</DIV> <DIV>226)<BR> at com.sun.enterprise.web.HttpServiceWebContainer.service(HttpServiceWebContainer.java:2071)<BR>Caused by: java.security.AccessControlException: access denied (java.lang.RuntimePermission </DIV> <DIV>createClassLoader)<BR> at java.security.AccessControlContext.checkPermission(AccessControlContext.java:264)<BR> at java.security.AccessController.checkPermission(AccessController.java:427)<BR> at
java.lang.SecurityManager.checkPermission(SecurityManager.java:532)<BR> at java.lang.SecurityManager.checkCreateClassLoader(SecurityManager.java:594)<BR> at java.lang.ClassLoader.<init>(ClassLoader.java:201)<BR> at org.drools.rule.PackageCompilationData$PackageClassLoader.<init>(Unknown Source)<BR> at org.drools.rule.PackageCompilationData.init(Unknown Source)<BR> at org.drools.rule.PackageCompilationData.<init>(Unknown Source)<BR> at org.drools.rule.Package.<init>(Unknown Source)<BR> at org.drools.compiler.PackageBuilder.newPackage(Unknown Source)<BR> at org.drools.compiler.PackageBuilder.addPackage(Unknown Source)<BR> at org.drools.compiler.PackageBuilder.addPackageFromDrl(Unknown Source)<BR> at com.abc.rules.jboss.DroolsContainer.buildRuleBase(DroolsContainer.java:204)<BR> ... 41 more<BR></DIV> <DIV> </DIV><p> 
<hr size=1>Building a website is a piece of cake. <br>Yahoo! Small Business gives you <a href="http://us.rd.yahoo.com/evt=48251/*http://smallbusiness.yahoo.com/webhosting/?p=PASSPORTPLUS">all the tools to get online.</a>