Для имитации поведения я вижу я написал этот тест (дает точно такую же ошибку):Morphia отображение Дженерики
@Test
public void testListGenerics() {
@Entity
class BaseOne<T> {
@Id
ObjectId _id;
T value;
void setValue(T value) {
this.value = value;
}
}
class ListBase<ITEM> extends BaseOne<List<ITEM>> { }
class ConcreteOne extends ListBase<String> {}
ConcreteOne concreteOne = new ConcreteOne();
List<String> strings = Arrays.asList("Hello, ", "world");
concreteOne.setValue(strings);
morphia.toDBObject(concreteOne);
}
При попытке отобразить это я получаю:
java.lang.NullPointerException на com.google.code.morphia.utils.ReflectionUtils.getParameterizedClass (ReflectionUtils.java:306) на com.google.code.morphia.utils.ReflectionUtils.getParameterizedClass (ReflectionUtils.java:302) в com.google.code.morphia.utils.ReflectionUtils.getParameterizedClass (ReflectionUtils.java:324) на com.google.code.morphia.utils.ReflectionUtils.getParameterizedClass (ReflectionUtils.java:302) на com.google .code.morphia.utils.ReflectionUtils.getParameterizedType (ReflectionUtils.java:281) на com.google.code.morphia.mapping.MappedField.discoverMultivalued (MappedField.java:136) на com.google.code.morphia .mapping.MappedField.discover (MappedField.java:96) на com.google.code.morphia.mapping.MappedField. (MappedField.java:76) на com.google.code.morphia.mapping.MappedClass. открыть (MappedClass.java:197)на com.google.code.morphia.mapping.MappedClass. (MappedClass.java:119) в com.google.code.morphia.mapping.Mapper.getMappedClass (Mapper.java:225) в ком. google.code.morphia.DatastoreImpl.getWriteConcern (DatastoreImpl.java:1346) в com.google.code.morphia.DatastoreImpl.save (DatastoreImpl.java:934)
Что я могу сделать, чтобы сделать эту работу ?
Какую версию Morphia вы используете? – ioseb
Какую версию Morphia вы используете? – Nikoloz
Я использую версию 0.104 –