2011-11-17 2 views
0

어떻게 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" 

에 그것을 저장 괜찮아.

의견이 있으십니까?

대단히 감사합니다!

답변

0

Thing은 모르 피아 엔티티로 매핑됩니까? 그렇지 않다면, morphia는 그것을 몽고에 저장하는 방법을 모른다.

+0

humm, 아니요. 대개 내가 클래스 Thing 일에 정의한다면; 그것은 올바르게 유지됩니다. 오늘 귀하의 제안을 시험해보고 무슨 일이 일어나는지 보겠습니다. – Khon

+0

그래서 마침내 당신이 제안한 것을 시도 할 시간이 있었지만 주사위는 없었습니다. 덕분에 – Khon

0

오래된 질문 내가 실현,하지만 난이 건너 온 : (안된)

"당신이 등록하지 않은 ...이 목록과지도를 포함하여 MongoDB를 드라이버에서 지원하는 기본 유형,하지만 복잡한 객체를 포함 할 수 예 morphia.getMapper().getConverters().addConverter(new MyCustomTypeConverter()) 모르핀 (와 변환기 "에서

는 :. http://www.carfey.com/blog/using-mongodb-with-morphia/

로서 상기 : 안된

HTH

01..
+0

흥미 롭지 만, 곧 시도해 보겠습니다. 나는 지금 일과 함께 약간로드되어있다.나는 곧 다시보고 할 것이다. 감사! – Khon

관련 문제