【发布时间】:2014-07-23 15:33:01
【问题描述】:
我正在实现一个复合组件,我需要在其中使用一个命令按钮,该按钮将从数据表中删除一行。对象可能尚未保存在数据库中(取决于操作确认),因此我无法使用 id。
我知道我可以指定字符串或整数,但是可以在界面中指定一个对象作为此单选按钮中的操作的参数,应该如何完成(是否指定类路径)?该对象是我在支持的 bean 中管理的 DTO:
<cc:interface>
<cc:attribute name="objectList" />
<cc:attribute name="removeButtonAction"
method-signature="void removeObjectDto(ObjectDto)" />
</cc:interface>
<cc:implementation>
<p:datatable id="myDatatable" var="objectRow" value="{#cc.attrs.objectList}">
...
<p:column>
<f:facet name="header">Delete Action</f:facet>
<h:commandButton value="Delete" action="#{cc.attrs.removeButtonAction(objectRow)}" >
<f:ajax execute=":myDatatable" render=":myDatatable" />
</h:commandButton>
</p:column>
</p:datatable>
</cc:implementation>
【问题讨论】:
-
我找到了答案,默认类是 java.lang.object 所以这是不可能的,我生成了一个标识符只是为了渲染对象
标签: jsf primefaces composite-component