/ / MongoDB जावा में दस्तावेज़ अपडेट: कोडिंग त्रुटि या ड्राइवर बग? - जावा, मोंगोडब, मोंगोडब-क्वेरी, मोंगोडब-जावा

जावा में MongoDB दस्तावेज़ अद्यतन: कोडिंग त्रुटि या ड्राइवर बग? - जावा, मोंगोडब, मोंगोडब-क्वेरी, मोंगोडब-जावा

मैं MongoDB का उपयोग कर रहा हूं जावा चालक v3.2.2 और मैं एक मौजूदा दस्तावेज़ में एक नया स्ट्रिंग सरणी फ़ील्ड जोड़ने के लिए निम्नलिखित निर्देश का उपयोग करता हूं:

myMongoCollection.updateOne(new Document("id", id), Updates.set("arrayField", Arrays.asList(new Document("strField", strValue))));

यह निम्नलिखित अपवाद बनाता है:

org.bson.codecs.configuration.CodecConfigurationException: "t" नहीं खोज सकते वर्ग java.util के लिए एक कोडेक।

क्या मैं एक कोडिंग त्रुटि कर रहा हूं या यह सुझाव के अनुसार ड्राइवर बग से संबंधित है यहाँ (लिंक)?

यदि यह ड्राइवर बग से संबंधित है, तो कोई संकेत कैसेमैं आसानी से नवीनतम-अभी तक जारी नहीं किया गया संस्करण (3.3) प्राप्त कर सकता हूं, जहां तय किया गया है (यानी मैं आसानी से एक जेएआर फ़ाइल कैसे बना सकता हूं, यह जानते हुए कि जीआईटी मेरे लिए पूरी तरह से नया है)?

बहुत धन्यवाद, टॉम

उत्तर:

उत्तर № 1 के लिए 1

में MongoDB-जावा-चालक v3.2.2, आप उपयोग कर सकते हैं Document के बजाय Updates.set बिल्डर। यह भी देखें अद्यतन दस्तावेज़

import static com.mongodb.client.model.Filters.eq;

myMongoCollection.updateOne(eq("id", id), new Document("$set", new Document ("arrayField", Arrays.asList(new Document("strField", strValue)))));

वैकल्पिक रूप से, अगर फिक्स मास्टर शाखा में चला गया है, तो आप जार को गिट से बना सकते हैं:

$ git clone https://github.com/mongodb/mongo-java-driver.git
$ cd mongo-java-driver
$ ./gradlew

परिणामस्वरूप जार में होगा build/libs निर्देशिका।