Hi,
I am using Tiles2, and Spring 2.5.4 in a Java web application being deployed on Tomcat 5.0.27. The app works fine on the local machine but while deployment fails with the following exception.
org.springframework.beans.factory.BeanCreationExce ption: Error creating bean with name 'tilesConfigurer' defined in ServletContext resource [/WEB-INF/myapp-servlet.xml]: Invocation of init method failed; nested exception is java.security.AccessControlException: access denied (java.lang.RuntimePermission setContextClassLoader)
org.springframework.beans.factory.support.Abstract AutowireCapableBeanFactory.initializeBean(Abstract AutowireCapableBeanFactory.java:1337)
org.springframework.beans.factory.support.Abstract AutowireCapableBeanFactory.doCreateBean(AbstractAu towireCapableBeanFactory.java:473)
org.springframework.beans.factory.support.Abstract AutowireCapableBeanFactory$1.run(AbstractAutowireC apableBeanFactory.java:409)
java.security.AccessController.doPrivileged(Native Method)
org.springframework.beans.factory.support.Abstract AutowireCapableBeanFactory.createBean(AbstractAuto wireCapableBeanFactory.java:380)
org.springframework.beans.factory.support.Abstract BeanFactory$1.getObject(AbstractBeanFactory.java:2 64)
org.springframework.beans.factory.support.DefaultS ingletonBeanRegistry.getSingleton(DefaultSingleton BeanRegistry.java:221)
org.springframework.beans.factory.support.Abstract BeanFactory.doGetBean(AbstractBeanFactory.java:261 )
org.springframework.beans.factory.support.Abstract BeanFactory.getBean(AbstractBeanFactory.java:185)
org.springframework.beans.factory.support.Abstract BeanFactory.getBean(AbstractBeanFactory.java:164)
org.springframework.beans.factory.support.DefaultL istableBeanFactory.preInstantiateSingletons(Defaul tListableBeanFactory.java:429)
org.springframework.context.support.AbstractApplic ationContext.finishBeanFactoryInitialization(Abstr actApplicationContext.java:729)
org.springframework.context.support.AbstractApplic ationContext.refresh(AbstractApplicationContext.ja va:381)
org.springframework.web.servlet.FrameworkServlet.c reateWebApplicationContext(FrameworkServlet.java:4 02)
org.springframework.web.servlet.FrameworkServlet.i nitWebApplicationContext(FrameworkServlet.java:316 )
org.springframework.web.servlet.FrameworkServlet.i nitServletBean(FrameworkServlet.java:282)
org.springframework.web.servlet.HttpServletBean.in it(HttpServletBean.java:126)
javax.servlet.GenericServlet.init(GenericServlet.j ava:211)
sun.reflect.GeneratedMethodAccessor53.invoke(Unkno wn Source)
sun.reflect.DelegatingMethodAccessorImpl.invoke(De legatingMethodAccessorImpl.java:25)
java.lang.reflect.Method.invoke(Method.java:585)
org.apache.catalina.security.SecurityUtil$1.run(Se curityUtil.java:239)
java.security.AccessController.doPrivileged(Native Method)
javax.security.auth.Subject.doAsPrivileged(Subject .java:517)
org.apache.catalina.security.SecurityUtil.execute( SecurityUtil.java:266)
org.apache.catalina.security.SecurityUtil.doAsPriv ilege(SecurityUtil.java:157)
org.apache.catalina.security.SecurityUtil.doAsPriv ilege(SecurityUtil.java:110)
org.apache.catalina.valves.ErrorReportValve.invoke (ErrorReportValve.java:117)
org.apache.catalina.valves.AccessLogValve.invoke(A ccessLogValve.java:535)
org.apache.catalina.authenticator.SingleSignOn.inv oke(SingleSignOn.java:417)
org.apache.coyote.tomcat5.CoyoteAdapter.service(Co yoteAdapter.java:160)
org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyo teHandler.java:300)
org.apache.jk.common.HandlerRequest.invoke(Handler Request.java:374)
org.apache.jk.common.ChannelSocket.invoke(ChannelS ocket.java:743)
org.apache.jk.common.ChannelSocket.processConnecti on(ChannelSocket.java:675)
org.apache.jk.common.SocketConnection.runIt(Channe lSocket.java:866)
org.apache.tomcat.util.threads.ThreadPool$ControlR unnable.run(ThreadPool.java:683)
java.lang.Thread.run(Thread.java:595)
root cause
java.security.AccessControlException: access denied (java.lang.RuntimePermission setContextClassLoader)
java.security.AccessControlContext.checkPermission (AccessControlContext.java:264)
java.security.AccessController.checkPermission(Acc essController.java:427)
java.lang.SecurityManager.checkPermission(Security Manager.java:532)
java.lang.Thread.setContextClassLoader(Thread.java :1306)
org.apache.tiles.util.ClassUtil.instantiate(ClassU til.java:82)
org.apache.tiles.util.ClassUtil.instantiate(ClassU til.java:48)
org.apache.tiles.factory.TilesContainerFactory.cre ateFactory(TilesContainerFactory.java:286)
org.apache.tiles.factory.TilesContainerFactory.get Factory(TilesContainerFactory.java:144)
org.apache.tiles.factory.TilesContainerFactory.get Factory(TilesContainerFactory.java:122)
org.springframework.web.servlet.view.tiles2.TilesC onfigurer.createTilesContainer(TilesConfigurer.jav a:213)
org.springframework.web.servlet.view.tiles2.TilesC onfigurer.afterPropertiesSet(TilesConfigurer.java: 201)
org.springframework.beans.factory.support.Abstract AutowireCapableBeanFactory.invokeInitMethods(Abstr actAutowireCapableBeanFactory.java:1368)
org.springframework.beans.factory.support.Abstract AutowireCapableBeanFactory.initializeBean(Abstract AutowireCapableBeanFactory.java:1334)
org.springframework.beans.factory.support.Abstract AutowireCapableBeanFactory.doCreateBean(AbstractAu towireCapableBeanFactory.java:473)
org.springframework.beans.factory.support.Abstract AutowireCapableBeanFactory$1.run(AbstractAutowireC apableBeanFactory.java:409)
java.security.AccessController.doPrivileged(Native Method)
org.springframework.beans.factory.support.Abstract AutowireCapableBeanFactory.createBean(AbstractAuto wireCapableBeanFactory.java:380)
org.springframework.beans.factory.support.Abstract BeanFactory$1.getObject(AbstractBeanFactory.java:2 64)
org.springframework.beans.factory.support.DefaultS ingletonBeanRegistry.getSingleton(DefaultSingleton BeanRegistry.java:221)
org.springframework.beans.factory.support.Abstract BeanFactory.doGetBean(AbstractBeanFactory.java:261 )
org.springframework.beans.factory.support.Abstract BeanFactory.getBean(AbstractBeanFactory.java:185)
org.springframework.beans.factory.support.Abstract BeanFactory.getBean(AbstractBeanFactory.java:164)
org.springframework.beans.factory.support.DefaultL istableBeanFactory.preInstantiateSingletons(Defaul tListableBeanFactory.java:429)
org.springframework.context.support.AbstractApplic ationContext.finishBeanFactoryInitialization(Abstr actApplicationContext.java:729)
org.springframework.context.support.AbstractApplic ationContext.refresh(AbstractApplicationContext.ja va:381)
org.springframework.web.servlet.FrameworkServlet.c reateWebApplicationContext(FrameworkServlet.java:4 02)
org.springframework.web.servlet.FrameworkServlet.i nitWebApplicationContext(FrameworkServlet.java:316 )
org.springframework.web.servlet.FrameworkServlet.i nitServletBean(FrameworkServlet.java:282)
org.springframework.web.servlet.HttpServletBean.in it(HttpServletBean.java:126)
javax.servlet.GenericServlet.init(GenericServlet.j ava:211)
sun.reflect.GeneratedMethodAccessor53.invoke(Unkno wn Source)
sun.reflect.DelegatingMethodAccessorImpl.invoke(De legatingMethodAccessorImpl.java:25)
java.lang.reflect.Method.invoke(Method.java:585)
org.apache.catalina.security.SecurityUtil$1.run(Se curityUtil.java:239)
java.security.AccessController.doPrivileged(Native Method)
javax.security.auth.Subject.doAsPrivileged(Subject .java:517)
org.apache.catalina.security.SecurityUtil.execute( SecurityUtil.java:266)
org.apache.catalina.security.SecurityUtil.doAsPriv ilege(SecurityUtil.java:157)
org.apache.catalina.security.SecurityUtil.doAsPriv ilege(SecurityUtil.java:110)
org.apache.catalina.valves.ErrorReportValve.invoke (ErrorReportValve.java:117)
org.apache.catalina.valves.AccessLogValve.invoke(A ccessLogValve.java:535)
org.apache.catalina.authenticator.SingleSignOn.inv oke(SingleSignOn.java:417)
org.apache.coyote.tomcat5.CoyoteAdapter.service(Co yoteAdapter.java:160)
org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyo teHandler.java:300)
org.apache.jk.common.HandlerRequest.invoke(Handler Request.java:374)
org.apache.jk.common.ChannelSocket.invoke(ChannelS ocket.java:743)
org.apache.jk.common.ChannelSocket.processConnecti on(ChannelSocket.java:675)
org.apache.jk.common.SocketConnection.runIt(Channe lSocket.java:866)
org.apache.tomcat.util.threads.ThreadPool$ControlR unnable.run(ThreadPool.java:683)
java.lang.Thread.run(Thread.java:595)
As the application is deployed on a shared hosting, I dont have access to Tomcat logs. Any idea what could be the cause of this error? A Google on the exception resulted in nothing
Any pointers/suggestions are most welcome!
Keep Walking,
Sandy



Reply With Quote