Always it's recommended not to bind the UIComponent with managed bean with higher scopes(view, session, pageFlow, application etc.). There are multiple reasons to justify this suggestion. 1. JSF components are not Serializable, so your managed bean may fail to serialize in high availability mode. 2. Leaving stale references of the component if the bean survives the life of the view/page etc. If you really want to store a component reference in managed whose scope is higher than request, then there is utility class for your help - ComponentReference . You can take a look at org.apache.myfaces.trinidad.util.ComponentReference API to learn more. I should admit that I was not aware of this one till I learned about this from an application developer ;) ComponentReference Usage: private ComponentReference someUICompReference; public UIComponent getSomeUIComponent(){ return someUICompReference == null ? null : someUIComp...