4

私のjsfページにこの行があります

<h:dataTable value="#{customer.getCustomerList()}"

そして私の豆には私が持っています

public List<Customer> getCustomerList(){
        return customerBo.findAllCustomer();
    }

私はサーブレット2.5でEclipse HeliosでJSF 2.0を使用しています。検証すると、

Expression must be a value expression but is a method expression

この問題を解決するにはどうすればよいですか?

4

2 に答える 2

2

意見:

<h:dataTable value="#{customer.customerList}"

あなたのvalue属性はh:dataTable、メソッド式ではなく、値式を期待しています。マネージド BeancustomerListで呼び出されるプロパティを作成する必要があります。#{customer}

@ManagedBean(name="customer")
public class Customer implements Serializable {
    private List<Customer> custormerList= new ArrayList<Customer>();

    public void setCustomerList(List<Customer> cust){
       this.customerList = cust;
    }
    public List<Customer> getCustomerList(){
        return customerBo.findAllCustomer();
    }
}

h:dataTable タグのドキュメントを参照してください

于 2012-11-24T09:29:47.877 に答える