我必須與處理生物多樣性標準的此庫一起工作。從本質上講,它在CSV,XML等讀取並驗證它,允許人們通過記錄與類型DarwinCoreRecord使用不受支持的庫,將我引向鑄造
對於一些奇怪的原因,只要物體從迭代器移動迭代,就消失了。下面小例子:
ArrayList<DarwinCoreRecord> dwc = new ArrayList<DarwinCoreRecord>();
for(; iter.hasNext();) {
DarwinCoreRecord record = iter.next();
System.out.println(record.getSomeValue());
dwc.add(record);
}
打印語句是完美的,並打印出右側的詳細信息,如果我指出,外print語句for循環,空值由所有了。
因此,到我的問題(除非有人能解決上述問題)。我創建了一個擴展這個DarwinCoreRecord的骨架類。它看起來是這樣的:
public class DWCRecordStore extends DarwinCoreRecord {
public DWCRecordStore() {
}
}
這只是爲了測試我的計劃將工作,但我得到了classcastexception。我已經處理了一段時間(至少在Java中),但我沒有看到任何問題。我不是從DWCRecordStore投射到DarwinCoreRecord,所以我看不到問題。
有沒有人看到我已經錯過的任何耀眼的東西?
在此先感謝。
編輯:對不起,錯誤是在這裏:
java.lang.ClassCastException: org.gbif.dwc.record.DarwinCoreRecord cannot be cast to com.encima.DWCRecordStore
at com.encima.DroolsTest.main(DroolsTest.java:37)
編輯2:添加我的使用鑄件。
DWCRecordStore drs = new DWCRecordStore();
DarwinCoreRecord dwc = iter.next();
drs = (DWCRecordStore) dwc;
做,都接受所有的答案,在部分幫助的問題,加了我自己的那些被部分解決的答案。謝謝你提醒我! – 2012-07-17 07:32:32
你能給出*確切*錯誤和它的堆棧跟蹤嗎? (+指向堆棧跟蹤中的相關行?) – amit 2012-07-17 07:35:47