2 回答
![?](http://img1.sycdn.imooc.com/545865da00012e6402200220-100-100.jpg)
TA贡献1843条经验 获得超7个赞
这是 Corda 3 中的一个错误。它将在 Corda 4 中修复。
同时,解决方法是更改eligibleCurrency为 a List<?>,并根据需要投射其元素:
private List<?> eligibleCurrency;
public List<?> getEligibleCurrency() {
return eligibleCurrency;
}
public void setEligibleCurrency(List<?> eligibleCurrency) {
this.eligibleCurrency = eligibleCurrency;
}
![?](http://img1.sycdn.imooc.com/54584f850001c0bc02200220-100-100.jpg)
TA贡献1802条经验 获得超5个赞
根据corda V3,集合是不可变的,因此您不能添加到现有集合中。解决方案是创建一个函数,该函数获取现有集合的副本并将项目添加到其中,最后将其引用到合格货币列表中。
private Collection<SupportingDocument> supportingDocs;
public void addSupportingDoc(SupportingDocument supportingDoc) {
//since corda 3.1 has unmodifiable collection
List<SupportingDocument> suppDoc = new ArrayList<SupportingDocument>();
for(SupportingDocument existingDoc : supportingDocs){
suppDoc.add(existingDoc);
}
// adding new document
suppDoc.add(supportingDoc);
this.supportingDocs = Collections.unmodifiableCollection(suppDoc);
}
我希望,这是有道理的
添加回答
举报