Зависимият модул има ли друга алтернативна декларация на класовете Page orModel?
От горната част на проследяването на стека, ("com.google.code.morphia.mapping.MappingException:Грешка при настройка на стойност от конвертор (LongConverter) за models.Page.navigationId до 20000"), изглежда, че има несъответствие на типа между начина цифрова стойност се съхранява и извлича. Например в Java не е необичайно да съхраните нещо като Double и след това по погрешка да се опитате да го извлечете като Integer или Long. И така, можете ли да проверите дали декларацията на navigationId в зависимия модул е същата като тази, която сте показали тук? Те трябва да споделят определението, но е възможно да има алтернатива.
Друго нещо, което трябва да проверите, е дали вашият код поставя Long във yourDBObject, а не float. Например, ако го вмъквате през обвивката, ще трябва да използвате една от обвивките, напр.
db.Page.save({_id:NumberLong(20000)});
В противен случай това също ще доведе до несъответствие, когато го извлечете; по подразбиране числата в JavaScript са двойни.