Java PrimeFaces对话框没有';t使用数据表

Java PrimeFaces对话框没有';t使用数据表,java,jsf,primefaces,datatable,Java,Jsf,Primefaces,Datatable,我跟着这里,但我不知道为什么它不工作。我花了3天的时间来解决这个问题,但我无法找出代码中的错误。希望有人推荐我 我正在使用Hibernate+JSF2.0+PrimeFaces3.5 xhtml customerBean(请求范围) 公共类customerBean{ 私人名单客户; 私人客户选择客户; /**创建customerBean的新实例*/ 公共customerBean(){ 客户=新的ArrayList(); } 公共列表getCustomer(){ CustomersDao cu

我跟着这里,但我不知道为什么它不工作。我花了3天的时间来解决这个问题,但我无法找出代码中的错误。希望有人推荐我

我正在使用Hibernate+JSF2.0+PrimeFaces3.5

xhtml


customerBean(请求范围)

公共类customerBean{
私人名单客户;
私人客户选择客户;
/**创建customerBean的新实例*/
公共customerBean(){
客户=新的ArrayList();
}
公共列表getCustomer(){
CustomersDao cust_dao=新CustomersDao();
customer=cust_dao.findAll();
退货客户;
}
公共客户getSelectedCustomer(){
返回所选客户;
}
公共作废设置selectedCustomer(Customer selectedCustomer){
this.selectedCustomer=selectedCustomer;
}
}

尝试更改var namevar=“customer”value=“#{customerBean.customer}”我尝试了你的代码,效果很好<使用
FireBug
进行代码>调试,查看是否存在任何错误

在测试了代码之后,您可以确认这似乎没有任何问题(即使您可以使用单独的表单来改进代码)。在这里,你有一个适合我的方法,你自己试试(你应该尽量减少问题,你最好从一个合适的方法开始,并根据你的具体情况进行调整)

@ManagedBean
@视域
公共类CustomerBean实现了可序列化{
/**
* 
*/
私有静态最终长serialVersionUID=-6479501676353748761L;
私人客户选择客户;
私有列表客户=Arrays.asList(新客户(“Andy”),
“棕色”、“A”abrown@email.com新客户(“乔治”、“沃尔特”,
“B”gwalter@email.com"));
公共客户getSelectedCustomer(){
返回所选客户;
}
公共作废设置selectedCustomer(Customer selectedCustomer){
this.selectedCustomer=selectedCustomer;
}
公共列表getCustomers(){
返回客户;
}
公共类客户{
公共客户(字符串firstName、字符串lastName、字符串dob、,
字符串(电子邮件){
this.firstName=firstName;
this.lastName=lastName;
this.dob=dob;
this.email=电子邮件;
}
私有字符串名;
私有字符串lastName;
私有字符串dob;
私人字符串电子邮件;
公共字符串getFirstName(){
返回名字;
}
public void setFirstName(字符串firstName){
this.firstName=firstName;
}
公共字符串getLastName(){
返回姓氏;
}
public void setLastName(字符串lastName){
this.lastName=lastName;
}
公共字符串getDob(){
返回dob;
}
公共void setDob(字符串dob){
this.dob=dob;
}
公共字符串getEmail(){
回复邮件;
}
公用电子邮件(字符串电子邮件){
this.email=电子邮件;
}
}
}


首先,考虑有两种形式,一种用于表本身,另一种用于对话框。完成后,请详细说明您的问题。
customerBean#setSelectedCustomer
调用是否正确?有什么
对您不起作用
,对话框根本不显示?@XtremeBiker是的,兄弟,绑定值工作正常,但对话框不显示。但是Makky说我的代码运行得很好。我花了三天时间,但我不知道我的代码出了什么问题。真的吗?但我看不到对话框显示。我真的不知道为什么?chat.stackoverflow.com/rooms/42652/myvbhelp只需将其复制粘贴到您的项目中,查看它的工作情况并使其适应您所做的工作。您的代码工作得非常好,我刚刚实现了可序列化并将范围更改为视图,但它仍然不起作用。你需要我的项目来检查吗?是的,它工作得很好。我的代码仅绑定值有效。我可以将我的项目发送给您进行检查吗?没有时间配置/启动/检查您的项目。然而,由于我发布的代码与您的非常相似,您为什么不使用我的代码来开始实现您的功能呢?只要用我的作为基础,添加你需要的一切,而不是以其他方式。
public class customerBean {

    private List<Customer> customer;
    private Customer selectedCustomer;

    /** Creates a new instance of customerBean */
    public customerBean() {
        customer = new ArrayList<Customer>();        
    }

    public List<Customer> getCustomer() {
        CustomersDao cust_dao = new CustomersDao();
        customer = cust_dao.findAll();
        return customer;
    }

    public Customer getSelectedCustomer() {
        return selectedCustomer;
    }

    public void setSelectedCustomer(Customer selectedCustomer) {
        this.selectedCustomer = selectedCustomer;
    }
}
@ManagedBean
@ViewScoped
public class CustomerBean implements Serializable {

    /**
     * 
     */
    private static final long serialVersionUID = -6479501676353748761L;

    private Customer selectedCustomer;

    private List<Customer> customers = Arrays.asList(new Customer("Andy",
            "Brown", "A", "abrown@email.com"), new Customer("George", "Walter",
            "B", "gwalter@email.com"));

    public Customer getSelectedCustomer() {
        return selectedCustomer;
    }

    public void setSelectedCustomer(Customer selectedCustomer) {
        this.selectedCustomer = selectedCustomer;
    }

    public List<Customer> getCustomers() {
        return customers;
    }

    public class Customer {

        public Customer(String firstName, String lastName, String dob,
                String email) {
            this.firstName = firstName;
            this.lastName = lastName;
            this.dob = dob;
            this.email = email;
        }

        private String firstName;

        private String lastName;

        private String dob;

        private String email;

        public String getFirstName() {
            return firstName;
        }

        public void setFirstName(String firstName) {
            this.firstName = firstName;
        }

        public String getLastName() {
            return lastName;
        }

        public void setLastName(String lastName) {
            this.lastName = lastName;
        }

        public String getDob() {
            return dob;
        }

        public void setDob(String dob) {
            this.dob = dob;
        }

        public String getEmail() {
            return email;
        }

        public void setEmail(String email) {
            this.email = email;
        }
    }

}