我对 JSF 很陌生(只有 1 周大)并正在开发第一个组件。组件类似于表格,它将集合作为输入并以表格格式呈现内容。除此之外,还会在每行的末尾呈现一个“删除”链接。
我创建了“复合”组件 (.xhtml) 和 ComponentType(带有 @FacesComponent 的 java 类)。
我得到了完整的表格渲染,并且每一行都显示了“删除”链接。现在尝试添加在我的类中使用@FacesComponent 定义的操作。
<a4j:commandLink action="#{cc.removeRow(rowKey)}" value="Remove"/>
在我的组件(java 类)中,我定义了这个方法 removeRow(Integer rowKey)。但是在单击此“删除”链接时,不会触发该操作。我在组件中也定义了“h:form”。
非常感谢任何帮助或指示。
编辑:刚刚看了这个问题How to implement a dynamic list with a JSF 2.0 Composite Component? 它几乎符合我的要求。我不确定的一件事是当它被渲染时表单操作是什么,如果我单击组件中的按钮,它将如何调用它自己的组件 bean 中的方法。