我有一個getter和setter類:BeanUtils的調用集合的size()方法(這是不是setter)
class A
{
private Set<Offers> offers;
public Set<Offers> getOffers(){
return offers;
}
public void setOffers(Set<Offers> offers){
this.offers = offers;
}
}
現在我希望得到報價的大小()使用Apache共享PropertyUtils:
PropertyUtils.getProperty(myAInstance, "offers.size");
這應該基本上做的是一樣的:
myAInstance.getOffers().size();
但使用PropertyUti LS不工作,並給了我一個:
java.lang.NoSuchMethodException:未知屬性 '大小' 階級 '類java.util.LinkedHashSet'
使用PropertyUtils所有getter和其他對象上的setter工作正常。
我懷疑這是因爲Collection的size()方法沒有遵循getXXX和setXXX bean約定。
是否有另一種方法來使用PropertyUtils /或BeanUtils(或Apache Commons的其他任何方法)來調用我的集合的size()方法?
感謝 克里斯托夫
是的,我知道MVEL不是apache的常用軟件,但它使用的是Apache 2.0許可證,這正是所有常見軟件包應該使用的,我相信。 – Matt
謝謝,我意識到表達式語言更多的是我正在尋找的東西,而且我期望PropertyUtils的錯誤。我會給MVEL一個嘗試。 – Christoph