1 28 29 package javax.faces.webapp; 30 31 import java.io.*; 32 33 import javax.el.*; 34 35 import javax.faces.application.*; 36 import javax.faces.component.*; 37 import javax.faces.context.*; 38 39 import javax.servlet.jsp.*; 40 import javax.servlet.jsp.tagext.*; 41 42 public abstract class UIComponentELTag extends UIComponentClassicTagBase 43 implements Tag 44 { 45 private ValueExpression _binding; 46 private ValueExpression _rendered; 47 48 public void setBinding(ValueExpression binding) 49 throws JspException 50 { 51 _binding = binding; 52 } 53 54 protected boolean hasBinding() 55 { 56 return _binding != null; 57 } 58 59 public void setRendered(ValueExpression rendered) 60 { 61 _rendered = rendered; 62 } 63 64 protected ELContext getELContext() 65 { 66 return getFacesContext().getELContext(); 67 } 68 69 protected void setProperties(UIComponent component) 70 { 71 if (_rendered != null) 72 component.setValueExpression("rendered", _rendered); 73 74 String type = getRendererType(); 75 if (type != null) 76 component.setRendererType(type); 77 } 78 79 protected UIComponent createComponent(FacesContext context, 80 String newId) 81 throws JspException 82 { 83 Application app = context.getApplication(); 84 85 UIComponent component = app.createComponent(getComponentType()); 86 87 setProperties(component); 88 89 return component; 90 } 91 } 92 | Popular Tags |