[richfaces-issues] [JBoss JIRA] Commented: (RF-5248) NullPointerException in HeaderResourcesRendererBase

Nick Belaevski (JIRA) jira-events at lists.jboss.org
Sat Dec 6 02:28:46 EST 2008


    [ https://jira.jboss.org/jira/browse/RF-5248?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12441503#action_12441503 ] 

Nick Belaevski commented on RF-5248:
------------------------------------

Ok, we should consider this for 3.3.0.

There are no scheduled 3.1.x releases yet, so for now the only chance to get the fix would be to merge patch into branch and build RichFaces from sources

> NullPointerException in HeaderResourcesRendererBase
> ---------------------------------------------------
>
>                 Key: RF-5248
>                 URL: https://jira.jboss.org/jira/browse/RF-5248
>             Project: RichFaces
>          Issue Type: Bug
>    Affects Versions: 3.1.5
>         Environment: richfaces 3.1.5
> myFaces 1.1.5
> tomahawk 1.1.7
> tomcat 5.5.25
> jdk 1.6.0_10
>            Reporter: Michael Heinen
>             Fix For: 3.3.0
>
>
> I am facing sometimes a NullPointerException in class HeaderResourcesRendererBase in method getUrisSet.
> This occurs if two users post a from nearly parallel (no ajax request)
> I can sometimes reproduce it if I open two IE instances and submit two forms very fast from each IE, one after another.
> Note that the processing of the action takes some time (nearly 20 seconds due to some initializations).
> StackTrace:
> java.lang.NullPointerException
> 	at org.ajax4jsf.renderkit.HeaderResourcesRendererBase.getUrisSet(HeaderResourcesRendererBase.java:101)
> 	at org.ajax4jsf.renderkit.HeaderResourcesRendererBase.getHeaderScripts(HeaderResourcesRendererBase.java:54)
> 	at org.ajax4jsf.context.ViewResources.processHeadResources(ViewResources.java:61)
> 	at org.ajax4jsf.context.ViewResources.processHeadResources(ViewResources.java:94)
> 	at org.ajax4jsf.context.ViewResources.processHeadResources(ViewResources.java:94)
> 	at org.ajax4jsf.context.ViewResources.processHeadResources(ViewResources.java:94)
> 	at org.ajax4jsf.context.ViewResources.processHeadResources(ViewResources.java:94)
> 	at org.ajax4jsf.context.ViewResources.processHeadResources(ViewResources.java:94)
> 	at org.ajax4jsf.context.ViewResources.processHeadResources(ViewResources.java:94)
> 	at org.ajax4jsf.context.ViewResources.processHeadResources(ViewResources.java:94)
> 	at org.ajax4jsf.context.ViewResources.collect(ViewResources.java:41)
> 	at org.ajax4jsf.context.AjaxContextImpl.processHeadResources(AjaxContextImpl.java:398)
> 	at org.ajax4jsf.application.AjaxViewHandler.renderView(AjaxViewHandler.java:245)
> 	at org.apache.myfaces.lifecycle.RenderResponseExecutor.execute(RenderResponseExecutor.java:41)
> 	at org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:132)
> 	at org.apache.myfaces.custom.ppr.PPRLifecycleWrapper.render(PPRLifecycleWrapper.java:84)
> 	at javax.faces.webapp.FacesServlet.service(FacesServlet.java:140)
> 	at com.recommind.litigation.client.web.servlets.FacesServletWrapper.service(FacesServletWrapper.java:136)
> 	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)
> 	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
> 	at org.ajax4jsf.webapp.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:141)
> 	at org.ajax4jsf.webapp.BaseFilter.doFilter(BaseFilter.java:281)
> 	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
> 	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
> 	at org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(ExtensionsFilter.java:344)
> 	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
> 	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
> 	at com.recommind.litigation.client.web.filters.LoginFilter.doFilter(LoginFilter.java:237)
> 	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
> 	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
> 	at com.recommind.litigation.client.web.filters.EncodingFilter.doFilter(EncodingFilter.java:49)
> 	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
> 	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
> 	at com.recommind.litigation.client.web.filters.TimerFilter.doFilter(TimerFilter.java:65)
> 	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
> 	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
> 	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
> 	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:174)
> 	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
> 	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
> 	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108)
> 	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:174)
> 	at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:874)
> 	at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665)
> 	at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528)
> 	at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81)
> 	at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:689)
> 	at java.lang.Thread.run(Unknown Source)
> 	
> I added a Java Exception Breakpoint to suspend if a NullPointerException occurs.
> The vars are initialized with following values (stopped at line 101):
> for (int i = 0; i < resources.length; i++) {
> 	InternetResource resource = resources[i];
> 	uris.add(resource.getUri(context, component));   /***** line 101 *****/
> }
> component=AjaxPoll
> resources = InternetResource[1]  
> resources[1] = AjaScript 
> i=0
> resource= null !!!
> resources[i] contains a AjaScript instance but resource is null!
> So there must be an issue with multithreading, or?
> Is this a duplicate of RF-1555 ? If so is there any way to fix this in the 3.1.X branch ?

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: https://jira.jboss.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        



More information about the richfaces-issues mailing list