[ 
https://issues.apache.org/jira/browse/MYFACES-2775?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Martin Kočí updated MYFACES-2775:
---------------------------------

    Status: Patch Available  (was: Open)

> StackOverflowError when adding componentResource with id=null
> -------------------------------------------------------------
>
>                 Key: MYFACES-2775
>                 URL: https://issues.apache.org/jira/browse/MYFACES-2775
>             Project: MyFaces Core
>          Issue Type: Bug
>          Components: JSR-314
>    Affects Versions: 2.0.1-SNAPSHOT
>         Environment: myfaces trunk, tomcat 6.0.26
>            Reporter: Martin Kočí
>
> If second parameter - the componentResource:
> UIViewRoot.addComponentResource(FacesContext context, UIComponent 
> componentResource)
> has null id then StackOverflowError occurs:
> Caused by: java.lang.StackOverflowError
>       at java.lang.ThreadLocal.get(ThreadLocal.java:124)
>       at 
> javax.faces.context.FacesContext.getCurrentInstance(FacesContext.java:71)
>       at 
> javax.faces.component.UIComponentBase.getFacesContext(UIComponentBase.java:1057)
>       at 
> javax.faces.component.UIComponentBase.setParent(UIComponentBase.java:174)
>       at 
> javax.faces.component._ComponentChildrenList.childRemoved(_ComponentChildrenList.java:123)
>       at 
> javax.faces.component._ComponentChildrenList.remove(_ComponentChildrenList.java:147)
>       at 
> javax.faces.component._ComponentChildrenList.removeChildrenFromParent(_ComponentChildrenList.java:136)
>       at 
> javax.faces.component._ComponentChildrenList.add(_ComponentChildrenList.java:76)
>       at 
> javax.faces.component._ComponentChildrenList.add(_ComponentChildrenList.java:30)
>       at 
> javax.faces.component.UIViewRoot.addComponentResource(UIViewRoot.java:188)
>       at 
> org.apache.myfaces.renderkit.html.HtmlStylesheetRenderer.processEvent(HtmlStylesheetRenderer.java:86)
>       at 
> javax.faces.component.UIComponent$EventListenerWrapper.processEvent(UIComponent.java:1098)
>       at javax.faces.event.SystemEvent.processListener(SystemEvent.java:43)
>       at 
> org.apache.myfaces.application.ApplicationImpl._traverseListenerList(ApplicationImpl.java:1955)
>       at 
> org.apache.myfaces.application.ApplicationImpl.publishEvent(ApplicationImpl.java:504)
>       at 
> javax.faces.component.UIComponentBase._publishPostAddToViewEvent(UIComponentBase.java:201)
>       at 
> javax.faces.component.UIComponentBase.setParent(UIComponentBase.java:186)
>       at 
> javax.faces.component._ComponentChildrenList.updateParent(_ComponentChildrenList.java:128)
>       at 
> javax.faces.component._ComponentChildrenList.add(_ComponentChildrenList.java:79)
>       at 
> javax.faces.component._ComponentChildrenList.add(_ComponentChildrenList.java:30)
>       at 
> javax.faces.component.UIViewRoot.addComponentResource(UIViewRoot.java:188)
>       at 
> org.apache.myfaces.renderkit.html.HtmlStylesheetRenderer.processEvent(HtmlStylesheetRenderer.java:86)
>       at 
> javax.faces.component.UIComponent$EventListenerWrapper.processEvent(UIComponent.java:1098)
> ....
> This probably does not happen  if componentResource is created from a facelet 
> but only if it created from java code (a listener in my case)

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to