先决条件:
用户故事:
我想在Primefaces DataTable上实现删除行功能,删除功能必须显示在表格中。
实现:
数据表标题
<p:dataTable value="#{a.list}" var="var">
删除
<p:column headerText="Delete">
<p:commandLink value="-" action="#{a.delete(var)}" />
</p:column>
bean中的删除方法
public void delete(Something sth) {
model.getList().remove(sth);
}
结果:
当鼠标悬停在commandLink上时,它显示我的统一资源定位器localhost / applicationname /#
Eclipse在这个ExpressionLanguage代码#{a.delete(var)}
上给了我Facelet Validator警告标记语法错误
问题:
为了删除该行,我缺少什么?
答案 0 :(得分:0)
解决方案:
我已经从JSF(而不是primefaces)更改为commandlink并且得到了错误,我的方法不应该是void,但是在更改它并返回null之后它会运行...
public String delete(Something sth) {
model.getList().remove(sth); return null;
}