protected void setAttributes(FaceletContext faceletContext, Object object) {
super.setAttributes(faceletContext, object);
UIComponent component = (UIComponent) object;
AbstractComponentTag tag = (AbstractComponentTag) metaRule.getTag();
FacesContext facesContext = faceletContext.getFacesContext();
tag.setFacesContext(facesContext);
tag.setExpressionCreator(new FaceletsExpressionCreator(faceletContext) {
protected TagAttribute getAttribute(String attributeName) {
return AbstractFaceletsComponentHandler.this.getAttribute(attributeName);
}
});
try {
tag.setComponentProperties(facesContext, component);
} finally {
tag.removeFacesContext();
}
}