我似乎找不到 Seam3 中的 @DataModel 和 @DataModelSelection 在哪里(与 Seam2 相对)。它们是在什么 Seam 模块中定义的?如果他们的名字已经改变,现在是什么?
问问题
885 次
3 回答
4
假设您使用的是 JSF2.0,您可以将选择“注入”到操作方法中,如下所示:
<h:dataTable value="#{itemManager.itemList}" var="item">
<h:column>
<f:facet name="header">Item Id</f:facet>
#{item.id}
</h:column>
<h:column>
<f:facet name="header">Item Name</f:facet>
#{item.name}
</h:column>
<h:column>
<f:facet name="header">Action</f:facet>
<h:commandLink value="Delete" action="#{itemManager.delete(item)}" />
</h:column>
</h:dataTable>
和相应的托管bean:
@ManagedBean(name="itemManager")
@SessionScoped
public class ItemManager {
ArrayList<Item> itemList;
public ArrayList<Item> getItemList() {
if (itemList == null) {
itemList = ... // build item list
}
return itemList;
}
public String delete(Item item) {
itemList.remove(item);
return null;
}
}
于 2011-08-15T07:01:35.633 回答
2
@DataModel 和 @DataModelSelection 功能在 Seam3 中不可用。
于 2011-08-14T12:01:39.473 回答
0
我使用richfaces,您可以使用以下构造:
<a:commandLink value="Delete" action="#{bean.delete}">
<f:setPropertyActionListener value="#{item}" target="#{bean.selectedItem}" />
</a:commandLink>
于 2012-01-03T15:54:33.557 回答