MongoDB
 sql >> Baza danych >  >> NoSQL >> MongoDB

findAll kończy się niepowodzeniem po ponownej inicjalizacji morfii odtwarzania

Czy moduł zależny ma inną alternatywną deklarację klas Page lub Model?

Z góry śladu stosu ("com.google.code.morphia.mapping.MappingException:Błąd ustawienia wartości z konwertera (LongConverter) dla models.Page.navigationId na 20000"), wygląda na to, że istnieje niezgodność typu między sposobem wartość liczbowa jest przechowywana i pobierana. Na przykład w Javie często zdarza się, że przechowuje się coś jako Double, a następnie omyłkowo próbuje pobrać jako Integer lub Long. Czy możesz więc sprawdzić, czy deklaracja identyfikatora nawigacji w module zależnym jest taka sama jak ta, którą tu pokazałeś? Powinni podzielić się definicją, ale możliwe, że jest alternatywa.

Inną rzeczą do sprawdzenia jest to, że twój kod umieszcza Long w yourDBObject, a nie float. Na przykład, jeśli wstawiasz go przez powłokę, musisz użyć jednego z opakowań, np.

db.Page.save({_id:NumberLong(20000)});

W przeciwnym razie spowoduje to również niezgodność podczas pobierania; domyślnie liczby w JavaScript są podwojone.




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Usuwanie danych MongoDB - odzyskiwanie miejsca na dysku

  2. Zwróć cały dokument z agregacji

  3. Mongodb $lookup z zagnieżdżonym dokumentem

  4. Przywróć mongodb na serwerze produkcji meteorów

  5. Odpowiednik opcji mongo's out:reduce w hadoop