我正在尝试通过复合组件转发“f:validateRequired”验证器,而不使用必需的属性。
如何在我的组件中获取其价值?
<aa:myComponent id="specificNotice" value="#{edit.specificNotice}">
<f:validateRequired for="specificNotice" disabled="#{empty param['form:save']}" />
</aa:myComponent>
感谢。
答案 0 :(得分:0)
for
属性应引用复合组件实现中输入组件的id
。反过来,输入组件应在复合组件接口内声明为<cc:editableValueHolder>
。
所以,
<my:input value="#{bean.input}">
<f:validateRequired for="input" />
</my:input>
与
<cc:interface>
<cc:editableValueHolder name="input" />
</cc:interface>
<cc:implementation>
<h:inputText id="input" value="#{cc.attrs.value}" />
</cc:implementation>
应该这样做。