我正在寻找一个关于如何将方法表达式传递给自定义组件的最小示例。我尝试了以下操作,但从未调用过我组件的负责设置器。
豆我的看法:
public String bar(){
//do stuff
return "";
}
我的观点:
<my:comp foo="#{bean.bar}" />
我的组件的 Bean:
private static final String FOO = "foo";
public void setFoo(MethodExpression me){
//never called
getStateHelper().put(FOO, me);
}
public MethodExpression getFoo(){
//actually gets called
return (MethodExpression) getStateHelper().get(FOO);
}
在我的组件渲染器中,我调用component.getFoo()
并获得了一个 NPE。