依存モジュールには、PageまたはModelクラスの別の代替宣言がありますか?
スタックトレースの先頭から( "com.google.code.morphia.mapping.MappingException:models.Page.navigationIdから20000へのコンバーター(LongConverter)からの値の設定エラー)、途中でタイプの不一致があるようです数値が保存および取得されています。たとえば、Javaでは、何かをDoubleとして格納し、それを誤ってIntegerまたはLongとして取得しようとすることは珍しくありません。では、依存モジュールでのnavigationIdの宣言が、ここで示したものと同じであることを確認できますか?彼らは定義を共有する必要がありますが、その可能性はあります。
チェックするもう1つのことは、コードがLongをfloatではなくyourDBObjectに配置していることです。たとえば、シェルを介して挿入する場合は、ラッパーの1つを使用する必要があります。例:
db.Page.save({_ id:NumberLong(20000)});
そうしないと、取得時に不一致が発生します。デフォルトでは、JavaScriptの数値はdoubleです。