어떻게 morphia를 사용하여 mongodb에 HashMaps를 저장합니까?morphia를 사용하여 mongodb에 HashMaps를 저장하려면 어떻게해야합니까?
이것이 morphia의 버그인지, 아니면 내가 잘못하고 있는지 확실하지 않습니다. (UsedView이 예에서 물건의 것과 같습니다
내가 BasicDAO의 repo.save를 확장하는 클래스 (personInstance) 나는이 오류를 사용하여이를 저장하려고하면 내가이 도메인 모델@Entity("person")
public class Person {
private String property1;
private String property2;
private HashMap<String, Thing> things;
}
이 있다고 위의)
java.lang.IllegalArgumentException가 : (org.bson.BSONEncoder.putMap에서 org.bson.BSONEncoder._putObjectField (BSONEncoder.java:205) 에서 클래스 com.model.designed.UsedView 를 직렬화 할 수없는 BSONEncoder.java:245) at org.bson.BSONEncoder._putObjectField (BSONEnco (JSONEncoder.java:121) at org.bson.BSONEncoder.putObject (BSONEncoder.java:121) at org.bson.BSONEncoder.putObject (BSONEncoder.java:67) at com.mongodb.OutMessage.putObject (OutMessage. java : 189) at com.mongodb.DBApiLayer $ MyCollection.insert (DBApiLayer.java:245) at com.mongodb.DBApiLayer $ MyCollection.insert (DBApiLayer.java:209) at com.mongodb.DBCollection.insert DBCollection.java:66) at com.mongodb.DBCollection.save (DBCollection.java:622) (com.google.code.morphia.DatastoreImpl.save (DatastoreImpl.java:731) , com.google.code) morphia.DatastoreImpl.save (DatastoreImpl.java:793) at com.google.code.morphia.DatastoreImpl.save (DatastoreImpl.java:787) com.google.code.morphia.dao.BasicDAO.save (BasicDAO.java:109) ... 그리고
내가 변경 한 경우에 :
"private HashMap<String, Thing> things"
"private HashMap<String, String> things"
에 그것을 저장 괜찮아.
의견이 있으십니까?
대단히 감사합니다!
humm, 아니요. 대개 내가 클래스 Thing 일에 정의한다면; 그것은 올바르게 유지됩니다. 오늘 귀하의 제안을 시험해보고 무슨 일이 일어나는지 보겠습니다. – Khon
그래서 마침내 당신이 제안한 것을 시도 할 시간이 있었지만 주사위는 없었습니다. 덕분에 – Khon