[
http://issues.apache.org/struts/browse/SHALE-360?page=comments#action_39105 ]
Craig McClanahan commented on SHALE-360:
----------------------------------------
Ken, do you have any concrete reproducible example for this? Without anything
more to go on, it's going to be basically impossible to debug this.
The NPE at line 300 of MappingImpl could happen only if the "mappings" instance
variable had been corrupted. In turn, the only way that can happen is if
someone calls setMappings(null) after the mapping configurations have been
loaded -- the framework's only call to setMappings() is guaranteed to have a
non-null parameter, or an exception would have been thrown. Is there anything
in your code that ever calls this?
By the way, the last stack trace ("Cant create Lifecycle for id:
com.sun.faces.lifecycle.PARTIAL") is definitely not related to Shale.
> NPE in shale on GlassFish
> -------------------------
>
> Key: SHALE-360
> URL: http://issues.apache.org/struts/browse/SHALE-360
> Project: Shale
> Issue Type: Bug
> Components: Remoting
> Affects Versions: 1.0.3
> Environment: GlassFish v2 build 28
> Reporter: Ken Paulsen
>
> The following are the stack traces I received. It seemed to be intermittent.
> I think another bug occurred in Dynamic Faces related to GlassFish restoring
> session state across server restarts. After deserialization, transient
> variables were not restored... I don't know if something similar is
> happenning here, but could be.
> [#|2006-12-10T23:13:23.158-0800|INFO|sun-appserver-ee9.1|com.sun.jsftemplating|_ThreadID=12;_ThreadName=httpWorkerThread-8080-0;|WEBUI0004:
> The requested resource
> (/static/META-INF/libs/scriptaculous/version1.6.4/prototype.js) is not
> available.|#]
> [#|2006-12-10T23:13:23.159-0800|WARNING|sun-appserver-ee9.1|javax.enterprise.resource.webcontainer.jsf.lifecycle|_ThreadID=12;_ThreadName=httpWorkerThread-8080-0;_RequestID=1de3fe2b-e48e-435e-9976-ce30efc56ed4;|phase(RESTORE_VIEW
> 1,[EMAIL PROTECTED]) threw exception: java.lang.NullPointerException null
> org.apache.shale.remoting.impl.MappingImpl.viewId(MappingImpl.java:300)
> org.apache.shale.remoting.impl.MappingImpl.mapViewId(MappingImpl.java:227)
> org.apache.shale.remoting.faces.RemotingPhaseListener.afterPhase(RemotingPhaseListener.java:94)
> com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:278)
> com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:117)
> javax.faces.webapp.FacesServlet.service(FacesServlet.java:244)
> org.apache.catalina.core.ApplicationFilterChain.servletService(ApplicationFilterChain.java:398)
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:277)
> org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:255)
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:188)
> org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:586)
> com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:73)
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:186)
> org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:586)
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:556)
> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:1032)
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:137)
> org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:586)
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:556)
> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:1032)
> org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:250)
> com.sun.enterprise.web.connector.grizzly.DefaultProcessorTask.invokeAdapter(DefaultProcessorTask.java:618)
> com.sun.enterprise.web.connector.grizzly.DefaultProcessorTask.processNonBlocked(DefaultProcessorTask.java:549)
> com.sun.enterprise.web.connector.grizzly.DefaultProcessorTask.process(DefaultProcessorTask.java:790)
> com.sun.enterprise.web.connector.grizzly.DefaultReadTask.executeProcessorTask(DefaultReadTask.java:326)
> com.sun.enterprise.web.connector.grizzly.DefaultReadTask.doTask(DefaultReadTask.java:248)
> com.sun.enterprise.web.connector.grizzly.DefaultReadTask.doTask(DefaultReadTask.java:199)
> com.sun.enterprise.web.connector.grizzly.TaskBase.run(TaskBase.java:252)
> com.sun.enterprise.web.connector.grizzly.WorkerThreadImpl.run(WorkerThreadImpl.java:103)
> |#]
> I had accidentally missed the Dynamic Faces init parameter... I thought it
> was related to that (note standard lifecycle above). But after installing
> the init-param, clearing the generated directory in GF, and restarting the
> whole server... I still had an exception from shale:
> [#|2006-12-10T23:18:56.641-0800|INFO|sun-appserver-ee9.1|com.sun.jsftemplating|_ThreadID=12;_ThreadName=httpWorkerThread-8080-0;|WEBUI0004:
> The requested resource
> (/static/META-INF/libs/scriptaculous/version1.6.4/prototype.js) is not
> available.|#]
> [#|2006-12-10T23:18:56.642-0800|WARNING|sun-appserver-ee9.1|javax.enterprise.resource.webcontainer.jsf.lifecycle|_ThreadID=12;_ThreadName=httpWorkerThread-8080-0;_RequestID=4921981e-6383-4aa8-9655-f474eec508e3;|phase(RESTORE_VIEW
> 1,[EMAIL PROTECTED]) threw exception: java.lang.NullPointerException null
> org.apache.shale.remoting.impl.MappingImpl.viewId(MappingImpl.java:300)
> org.apache.shale.remoting.impl.MappingImpl.mapViewId(MappingImpl.java:227)
> org.apache.shale.remoting.faces.RemotingPhaseListener.afterPhase(RemotingPhaseListener.java:94)
> com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:278)
> com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:117)
> com.sun.faces.extensions.avatar.lifecycle.PartialTraversalLifecycle.execute(PartialTraversalLifecycle.java:79)
> javax.faces.webapp.FacesServlet.service(FacesServlet.java:244)
> org.apache.catalina.core.ApplicationFilterChain.servletService(ApplicationFilterChain.java:398)
>
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:277)
>
> org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:255)
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:188)
> org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:586)
> com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:73)
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:186)
> org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:586)
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:556)
> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:1032)
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:137)
> org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:586)
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:556)
> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:1032)
> org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:250)
> com.sun.enterprise.web.connector.grizzly.DefaultProcessorTask.invokeAdapter(DefaultProcessorTask.java:618)
> com.sun.enterprise.web.connector.grizzly.DefaultProcessorTask.processNonBlocked(DefaultProcessorTask.java:549)
> com.sun.enterprise.web.connector.grizzly.DefaultProcessorTask.process(DefaultProcessorTask.java:790)
> com.sun.enterprise.web.connector.grizzly.DefaultReadTask.executeProcessorTask(DefaultReadTask.java:326)
> com.sun.enterprise.web.connector.grizzly.DefaultReadTask.doTask(DefaultReadTask.java:248)
> com.sun.enterprise.web.connector.grizzly.DefaultReadTask.doTask(DefaultReadTask.java:199)
> com.sun.enterprise.web.connector.grizzly.TaskBase.run(TaskBase.java:252)
> com.sun.enterprise.web.connector.grizzly.WorkerThreadImpl.run(WorkerThreadImpl.java:103)
> I had it working at one point, I don't know if I did something to break it or
> if it's intermittent. It might not be shale's fault, it may be Dynamic Faces
> or the app server which has an error message on startup w/ the init-parm for
> Dynamic Faces in place:
> [#|2006-12-10T23:24:08.654-0800|WARNING|sun-appserver-ee9.1|javax.enterprise.resource.webcontainer.jsf.lifecycle|_ThreadID=10;_ThreadName=main;_RequestID=82a8ab26-627d-4681-8565-5c574f07d7db;|LifecycleId
> com.sun.faces.lifecycle.PARTIAL does not exist|#]
> [#|2006-12-10T23:24:08.656-0800|SEVERE|sun-appserver-ee9.1|javax.enterprise.system.container.web|_ThreadID=10;_ThreadName=main;_RequestID=82a8ab26-627d-4681-8565-5c574f07d7db;|WebModule[]StandardWrapper.Throwable
> java.lang.IllegalArgumentException: Cant create Lifecycle for id:
> com.sun.faces.lifecycle.PARTIAL.
> at
> com.sun.faces.lifecycle.LifecycleFactoryImpl.getLifecycle(LifecycleFactoryImpl.java:226)
> at javax.faces.webapp.FacesServlet.init(FacesServlet.java:170)
> at
> org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1165)
> at
> org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:994)
> at
> org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:4689)
> at
> org.apache.catalina.core.StandardContext.start(StandardContext.java:5081)
> at com.sun.enterprise.web.WebModule.start(WebModule.java:299)
> at
> org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1189)
> at org.apache.catalina.core.StandardHost.start(StandardHost.java:924)
> at
> org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1189)
> at
> org.apache.catalina.core.StandardEngine.start(StandardEngine.java:520)
> at org.apache.catalina.startup.Embedded.start(Embedded.java:916)
> at com.sun.enterprise.web.WebContainer.start(WebContainer.java:839)
> at
> com.sun.enterprise.web.PEWebContainer.startInstance(PEWebContainer.java:750)
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://issues.apache.org/struts/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira