Morphia выдает предупреждение о возможной гетерогенной коллекции для поля, не относящегося к коллекции

Это дополнительный вопрос к ручному преобразованию сторонних Класс с Морфией

У меня есть класс @Entity с полем типа javax.activation.MimeType. Когда я запускаю свое приложение, я вижу предупреждающее сообщение в окне вывода, говорящее

ПРЕДУПРЕЖДЕНИЕ. Многозначное поле 'javax.activation.MimeTypeParameterList.parameters' может представлять собой гетерогенную коллекцию. Это невозможно проверить. Пожалуйста, объявите допустимый тип, чтобы избавиться от этого предупреждения. класс java.lang.Object

Я уже написал и зарегистрировал класс преобразователя типов для типа «MimeType», который фактически просто игнорирует его поле «параметры». Но предупреждение продолжает появляться. Я отладил его и увидел, что предупреждение выдается при вызове datastore.ensureIndexes();.

Я попытался написать преобразователь типов для типа «MimeTypeParameterList», но это не подавило предупреждение. Я не могу просто пойти и добавить аннотацию @Transient к объявлению поля, потому что это сторонний код (ядро Java SE!), а не мой.

Есть ли "элегантный" способ устранить это предупреждение?


person a.b    schedule 18.03.2014    source источник


Ответы (1)


Я только что внес изменение в репозиторий morphia на github, которое подавляет это ведение журнала для вас. Он будет в версии 0.108 или вы можете собрать его локально, если хотите попробовать.

person evanchooly    schedule 24.03.2014