我正在使用 JSF 1.2 开发一个自定义组件。我的标签类扩展UIComponentELTag
并具有类型变量ValueExpression
。这些值是从标签的相应属性(使用setProperties
函数)中设置的,例如
<sr:show name="#{backingBean.name}" ...> #{backingBean.mainContent}</sr:show>
当我尝试将标签的 bodyContent 作为绑定值时,我被卡住了。这就是我的进展:
public int doAfterBody() throws JspException{
if(bodyContent!=null) {
String body = bodyContent.getString();
FacesContext context = FacesContext.getCurrentInstance();
UIComponent component = super.findComponent(context);
MyComp myComp= (MyComp) component;
myComp.setMain(body);
}
bodyContent.clearBody();
return SKIP_BODY;
}
如果标记的主体不包含绑定值,则此代码可以正常工作。我想检查主体是否具有绑定值,然后从 bean 设置值。
在 JSF 1.1 中,我使用isValueReference(body)
. 我如何在 JSF 1.2 中实现这一点?我在任何地方都找不到任何将正文内容作为绑定值的示例。