I believe its  a file system/tomcat permission problem.  I used to get an those 
errors, and I think I solved it by just starting (and changing the owner of) 
tomcat with the same user that owns all the webapps.  Assuming your on Linux.

I'm not sure if that's a solution for you, but I think its more a Tomcat 
permission thing than a Turbine thing.

Hope that helps or points you in the right direction.

Sheldon Ross



> From: [email protected]
> To: [email protected]
> Subject: Problem launching in live enviroment
> Date: Thu, 9 Apr 2009 16:34:50 +0200
> 
> Hello!
> 
> I have some problems with getting my app to run in the live environment. I
> have packed the application in a war-file and placed it in the webapps
> folder where it self-extracts.
> 
> When I try to access the application from my browser, it prints out this
> error:
> 
>  
> 
> Horrible Exception: java.lang.NullPointerException
>         at
> org.apache.turbine.services.pull.TurbinePullService.refreshGlobalTools(Turbi
> nePullService.java:671)
>         at
> org.apache.turbine.services.pull.TurbinePullService.getGlobalContext(Turbine
> PullService.java:362)
>         at
> org.apache.turbine.services.velocity.TurbineVelocityService.getContext(Turbi
> neVelocityService.java:174)
>         at
> org.apache.turbine.services.velocity.TurbineVelocityService.getContext(Turbi
> neVelocityService.java:241)
>         at
> org.apache.turbine.services.velocity.TurbineVelocity.getContext(TurbineVeloc
> ity.java:122)
>         at
> org.apache.turbine.modules.pages.VelocityPage.doBuildBeforeAction(VelocityPa
> ge.java:50)
>         at
> org.apache.turbine.modules.pages.DefaultPage.doBuild(DefaultPage.java:110)
>         at org.apache.turbine.modules.Page.build(Page.java:56)
>         at org.apache.turbine.modules.PageLoader.exec(PageLoader.java:104)
>         at org.apache.turbine.Turbine.doGet(Turbine.java:796)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:689)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
>         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>         at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39
> )
>         at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl
> .java:25)
>         at java.lang.reflect.Method.invoke(Method.java:585)
>         at
> org.apache.catalina.security.SecurityUtil$1.run(SecurityUtil.java:243)
>         at java.security.AccessController.doPrivileged(Native Method)
>         at javax.security.auth.Subject.doAsPrivileged(Subject.java:517)
>         at
> org.apache.catalina.security.SecurityUtil.execute(SecurityUtil.java:275)
>         at
> org.apache.catalina.security.SecurityUtil.doAsPrivilege(SecurityUtil.java:16
> 1)
>         at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Application
> FilterChain.java:245)
>         at
> org.apache.catalina.core.ApplicationFilterChain.access$0(ApplicationFilterCh
> ain.java:177)
>         at
> org.apache.catalina.core.ApplicationFilterChain$1.run(ApplicationFilterChain
> .java:156)
>         at java.security.AccessController.doPrivileged(Native Method)
>         at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterCh
> ain.java:152)
>         at
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.ja
> va:213)
>         at
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.ja
> va:178)
>         at
> org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase
> .java:432)
>         at
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126
> )
>         at
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105
> )
>         at
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java
> :107)
>         at
> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
>         at
> org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:199)
>         at
> org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:282)
>         at org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:767)
>         at
> org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:697)
>         at
> org.apache.jk.common.ChannelSocket$SocketConnection.runIt(ChannelSocket.java
> :889)
>         at
> org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.jav
> a:684)
>         at java.lang.Thread.run(Thread.java:595)
> 
>  
> 
> If I check Catalina out I find this:
> 
>  
> 
> SEVERE: Error unregistering mbean 
> 
> java.security.AccessControlException: access denied (java.io.FilePermission 
> 
> /var/lib/tomcat5.5/instances/at2/webapps/myapp/WEB-INF/classes/logging.prope
> rties read)
> 
>             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.checkRead(SecurityManager.java:871)
> 
>             at java.io.File.exists(File.java:700)
> 
>             at
> org.apache.naming.resources.FileDirContext.file(FileDirContext.java:827)
> 
>             at
> org.apache.naming.resources.FileDirContext.lookup(FileDirContext.java:210)
> 
>             at
> org.apache.naming.resources.ProxyDirContext.lookup(ProxyDirContext.java:293)
> 
>             at
> org.apache.catalina.loader.WebappClassLoader.findResourceInternal(WebappClas
> sLoader.java:1887)
> 
>             at
> org.apache.catalina.loader.WebappClassLoader.findResource(WebappClassLoader.
> java:929)
> 
>             at
> org.apache.juli.ClassLoaderLogManager.readConfiguration(ClassLoaderLogManage
> r.java:298)
> 
>             at
> org.apache.juli.ClassLoaderLogManager$2.run(ClassLoaderLogManager.java:272)
> 
>             at java.security.AccessController.doPrivileged(Native Method)
> 
>             at
> org.apache.juli.ClassLoaderLogManager.getClassLoaderInfo(ClassLoaderLogManag
> er.java:269)
> 
>             at
> org.apache.juli.ClassLoaderLogManager.getLogger(ClassLoaderLogManager.java:1
> 74)
> 
>             at java.util.logging.Logger.getLogger(Logger.java:255)
> 
>             at
> com.sun.jmx.trace.TraceManager.getLogger(TraceManager.java:166)
> 
>             at
> com.sun.jmx.trace.TraceManager.isSelected(TraceManager.java:197)
> 
>             at com.sun.jmx.trace.Trace.isSelected(Trace.java:84)
> 
>             at
> com.sun.jmx.mbeanserver.RepositorySupport.isTraceOn(RepositorySupport.java:8
> 7)
> 
>             at
> com.sun.jmx.mbeanserver.RepositorySupport.contains(RepositorySupport.java:47
> 2)
> 
>             at
> com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.isRegistered(DefaultMB
> eanServerInterceptor.java:556)
> 
>             at
> com.sun.jmx.mbeanserver.JmxMBeanServer.isRegistered(JmxMBeanServer.java:619)
> 
>             at
> org.apache.commons.modeler.Registry.unregisterComponent(Registry.java:612)
> 
>             at
> org.apache.catalina.session.ManagerBase.destroy(ManagerBase.java:691)
> 
>             at
> org.apache.catalina.session.StandardManager.stop(StandardManager.java:692)
> 
>             at
> org.apache.catalina.core.StandardContext.stop(StandardContext.java:4358)
> 
>             at
> org.apache.catalina.core.ContainerBase.removeChild(ContainerBase.java:892)
> 
>             at
> org.apache.catalina.startup.HostConfig.checkResources(HostConfig.java:1019)
> 
>             at
> org.apache.catalina.startup.HostConfig.check(HostConfig.java:1187)
> 
>             at
> org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:292)
> 
>             at
> org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSuppor
> t.java:119)
> 
>             at
> org.apache.catalina.core.ContainerBase.backgroundProcess(ContainerBase.java:
> 1305)
> 
>             at
> org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processC
> hildren(ContainerBase.java:1569)
> 
>             at
> org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processC
> hildren(ContainerBase.java:1578)
> 
>             at
> org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.run(Cont
> ainerBase.java:1558)
> 
>             at java.lang.Thread.run(Thread.java:595)
> 
> Apr 8, 2009 3:03:51 PM org.apache.commons.modeler.Registry
> unregisterComponent
> 
>  
> 
> The file that is supposed to be accessed did not exist from the beginning
> and I find no reference for it. I did create one but there is no change. I
> also find the classes folder t be a strange place to put it in.
> 
>  
> 
> I can also add that a print I performed in the init-method of one of my
> services. When I try to access the app, the print is performed so in some
> way my app is started.
> 
>  
> 
> Does anyone know what the problem is?
> 
> /Ludwig Magnusson
> 

_________________________________________________________________
Rediscover HotmailĀ®: Now available on your iPhone or BlackBerry
http://windowslive.com/RediscoverHotmail?ocid=TXT_TAGLM_WL_HM_Rediscover_Mobile1_042009

Reply via email to