2009-06-08 3 views
0

다음 스택 추적이 표시됩니다. 첫인상이 무엇인지 알고 싶을뿐입니다. 벡터를 버클리 DB에 저장할 수 없다는 말을하는 것 같습니다. 그 밖의 무엇을 당신에게 제공 할 수 있으며, 이것이 도움이 될 것입니다.버클리 DB 자바 버전, 벡터 저장 지원

Exception in thread "Timer-0" java.lang.IllegalArgumentException: Class could not be loaded or is not persistent: java.util.Vector 
    at com.sleepycat.persist.impl.PersistCatalog.createFormat(PersistCatalog.java:588) 
    at com.sleepycat.persist.impl.FieldInfo.collectRelatedFormats(FieldInfo.java:131) 
    at com.sleepycat.persist.impl.ComplexFormat.collectRelatedFormats(ComplexFormat.java:262) 
    at com.sleepycat.persist.impl.PersistCatalog.createFormat(PersistCatalog.java:616) 
    at com.sleepycat.persist.impl.PersistCatalog.addNewFormat(PersistCatalog.java:805) 
    at com.sleepycat.persist.impl.PersistCatalog.getFormat(PersistCatalog.java:745) 
    at com.sleepycat.persist.impl.PersistEntityBinding.getOrCreateFormat(PersistEntityBinding.java:176) 
    at com.sleepycat.persist.impl.PersistEntityBinding.<init>(PersistEntityBinding.java:36) 
    at com.sleepycat.persist.impl.Store.getPrimaryIndex(Store.java:328) 
    at com.sleepycat.persist.EntityStore.getPrimaryIndex(EntityStore.java:257) 
    at db.LastTopMovesDA.<init>(LastTopMovesDA.java:24) 
    at dao.LastTopMove.saveLastTopMove(LastTopMove.java:59) 
    at model.logic.MoveFilter.getTopMoves(MoveFilter.java:172) 
    at controller.Poller$1.run(Poller.java:50) 
    at java.util.TimerThread.mainLoop(Unknown Source) 
    at java.util.TimerThread.run(Unknown Source) 

답변

1

저장을 위해 데이터를 Berkeley DB에 전달하기 전에 데이터를 직렬화해야 할 수도 있습니다.

+0

직렬화없이 HashMap을 저장할 수 있습니다. 둘 사이에 다른 점이 있습니까? Vector가 직렬화해야하지만 HashMap은 필요하지 않음을 의미합니다. – Ankur

+0

HashMap에 이미 키 - 값 구조가 있으므로 berkeley db는 저장소를 투명하게 처리하고 키를 직렬화해야합니다./값 쌍을 만들고 데이터베이스에 저장합니다. 자세한 내용은 문서를 참조하십시오. (예 : ) – ynimous