2016-04-28 16 views
0

Ich entwickle Projekt mit Hibernate-Ogm 5 mit mongodb 3. Aber einige Abfrage kann nicht analysiert werden. Aber ich habe diese Abfrage auf Shell getestet. Es klappt. Was ist falsch an dieser Abfrage?Java MongoDB Treiber kann Abfrage nicht analysieren

com.mongodb.util.JSONParseException: 
db.Tree.update({'_id':2},{'$inc':{'totalUserCount':NumberInt(-1)}},{}) 
^ 
com.mongodb.util.JSONParser.parse(JSON.java:230) 
com.mongodb.util.JSONParser.parse(JSON.java:155) 
com.mongodb.util.JSON.parse(JSON.java:92) 
com.mongodb.util.JSON.parse(JSON.java:73) 
org.hibernate.ogm.datastore.mongodb.query.parsing.nativequery.impl.MongoDBQueryDescriptorBuilder.build(MongoDBQueryDescriptorBuilder.java:71) 

screen shot

+0

Haben Sie versucht, die Abfrage ohne den 'NumberInt()' - Wrapper auszuführen 'db.Tree.update ({'_ id': 2}, {'$ inc': {'totalUserCount': -1}}, {}) '? – chridam

+0

@chridam Wenn ich den NumberInt() Wrapper entferne MongoDB wird den Datentyp auf Double ändern. Ich will dieses Verhalten nicht. – hurelhuyag

Antwort

2

FYI, wird das Parsen Problem in der nächsten Version von OGM fixiert werden.

Beachten Sie, dass NumberLong, aber nicht NumberInt unterstützt wird, da NumberInt vom MongoDB Java-Treiber nicht unterstützt wird: https://jira.mongodb.org/browse/JAVA-2185.

Verwandte Themen