我有 4 个具有相同 get...() 方法的函数,我只更改名称或标识符,但我得到了与第四个不同的结果,即何时将新项目添加到列表中,它抛出 java.lang.UnsupportedOperationException . 我向你保证,我已经仔细检查了所有 4 个函数及其关系,但不知道为什么第四个函数会这样。
public List<PropertyAttribute> getAttributes() {
if (selectedCode == null)
return null;
Criteria criteria = this.propertyAttributeDAO.createCriteria();
FilterUtils.byField(criteria, "propertyCode", this.selectedCode, true);
List<PropertyAttribute> list = criteria.list();
if (isNewAttribute()) {
list.add(0, this.curAttribute); //this line that throws exception
}
return list;
}
更新堆栈跟踪:
Caused by: java.lang.UnsupportedOperationException
at java.util.AbstractList.add(AbstractList.java:148)
at bos.web.pages.instrument.ViewProperty.getAttributes(ViewProperty.java:654)
at $InternalPropertyConduit_237587e282284.get(Unknown Source)
at org.apache.tapestry5.internal.bindings.PropBinding.get(PropBinding.java:59)