Jsf 2 Primefaces命令按钮不更新数据表
我有primefaces命令按钮多个更新问题。命令按钮位于窗体内,而datatable不在窗体内 我试过:Jsf 2 Primefaces命令按钮不更新数据表,jsf-2,primefaces,datatable,commandbutton,Jsf 2,Primefaces,Datatable,Commandbutton,我有primefaces命令按钮多个更新问题。命令按钮位于窗体内,而datatable不在窗体内 我试过: update=":datalist1,form1" update=":datalist1 form1" update="datalist1 form1" update=":#{p:component('datalist1')},form1" form1每次更新,但dattable仍不更新 Version info: primefaces: 5.3 jsf: org.glassfis
update=":datalist1,form1"
update=":datalist1 form1"
update="datalist1 form1"
update=":#{p:component('datalist1')},form1"
form1每次更新,但dattable仍不更新
Version info:
primefaces: 5.3
jsf: org.glassfish 2.3.0-m04
spring: 4.2.3
and I use cdi for controller beans
第页:
人员名单
类别:
@Named
@SpringViewScoped
public class PersonelController implements Serializable{
private static final long serialVersionUID = 1L;
@Inject
private PersonelService personelService;
private List<Personel> personels;
private List<Personel> selectedPersonel;
private Personel personel;
@PostConstruct
public void init(){
personels=personelService.findAll();
personel=new Personel();
}
public PersonelService getPersonelService() {
return personelService;
}
public void setPersonelService(PersonelService personelService) {
this.personelService = personelService;
}
public List<Personel> getPersonels() {
return personels;
}
public void setPersonels(List<Personel> personels) {
this.personels = personels;
}
public List<Personel> getSelectedPersonel() {
return selectedPersonel;
}
public void setSelectedPersonel(List<Personel> selectedPersonel) {
this.selectedPersonel = selectedPersonel;
}
public Personel getPersonel() {
return personel;
}
public void setPersonel(Personel personel) {
this.personel = personel;
}
public void createPersonel(){
System.out.println("Personel adding..");
personelService.create(personel);
personel=new Personel();
System.out.println("Personel added");
}
}
@Named
@SpringViewScope
公共类PersonelController实现可序列化{
私有静态最终长serialVersionUID=1L;
@注入
私人人事服务;
私人名单人员;
私人名单选定人员;
私人人员;
@施工后
公共void init(){
personels=personelService.findAll();
personel=新的personel();
}
公共PersonelService getPersonelService(){
返回人员服务;
}
公共无效设置PersonelService(PersonelService PersonelService){
this.personelService=personelService;
}
公共列表getPersonels(){
返回人员;
}
公共作废设置人员(列出人员){
this.personels=个人;
}
公共列表getSelectedPersonel(){
返回所选人员;
}
公共无效设置selectedPersonel(列表selectedPersonel){
this.selectedPersonel=selectedPersonel;
}
公共人员{
返回人员;
}
公共无效设置人员(Personel Personel){
this.personel=personel;
}
public void createPersonel(){
System.out.println(“人员添加…”);
personelService.create(personel);
personel=新的personel();
System.out.println(“人员添加”);
}
}
我已经研究过primefaces命令按钮更新,但所有的建议都不适用于我。提前谢谢在我看来,新创建的人员似乎从未添加到列表中。所以你必须举例说
personels.add(personel);
或
在createPersonel()中,或将personels设置为null并在getPersonels()中执行延迟加载 我添加了personels=personelService.findAll();为了创建方法,我使用了update“:datalist1,form1”它对我很有用,非常感谢
personels.add(personel);
personels=personelService.findAll();