Тип com.mongodb .WriteConcern не может быть разрешен. На него косвенно ссылаются из файлов required .class . Как мне исправить эту ошибку?

#java #mongodb #eclipse #servlets #cookies

#java #mongodb #eclipse #сервлеты #файлы cookie

Вопрос:

Я включил mongodb-driver-3.0.2.jar и bson-4.1.0.jar в моем приложении путь построения в Eclipse. После написания простого кода вставки некоторых документов в базу данных MongoDB и его выполнения я получаю эту ошибку:

 The type com.mongodb.WriteConcern cannot be resolved. It is indirectly referenced from required .class files
  

Это мой код:

 package abhishek;              //<--- The error shows in this line
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.Cookie;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import com.mongodb.BasicDBObject;
import com.mongodb.DB;
import com.mongodb.DBCollection;
import com.mongodb.MongoClient;




@WebServlet("/Mongo_details")
public class Mongo_details extends HttpServlet {
    
    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        
        String name="";
        String email="";
        String age="";
        Cookie[] cookie=request.getCookies();
        for(Cookie c: cookie) {
            
            if(c.getName().equals("name"))
                name=c.getValue();
            else if(c.getName().equals("email"))
                email=c.getValue();
            else
                age=c.getValue();
            
        }
            
            // creates database
            MongoClient ml=new MongoClient("localhost",27017);
            DB db=ml.getDB("Storage");
            
// creates table
            DBCollection c=db.getCollection("Details");
            
// insert documents
            BasicDBObject doc=new BasicDBObject();
            doc.put("Name", name);
            doc.put("Email", email);
            doc.put("Age", age);
            c.insert(doc);
    
            
    }

}
  

Пожалуйста, помогите мне это исправить.

РЕДАКТИРОВАТЬ: Хорошо, я нашел исправление, я удалил mongodb-driver-3.0.2.jar из моего пути сборки и добавил mongo-java-driver-2.10.1. Но теперь он показывает новую ошибку в консоли:

 Caused by: java.lang.ClassNotFoundException: com.mongodb.DBObject
at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1365)
at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1188)
... 40 more
  

Но у меня есть этот класс в моем com.mongodb пакете

введите описание изображения здесь

Как мне это исправить?

Комментарии:

1. К какой версии сервера MongoDB вы получаете доступ из своего кода? Это автономный или кластер?

2. Сервер сообщества MongoDB 4.4.1 (последняя версия)

3. Затем попробуйте использовать последнюю версию драйверов Java; v4.1.1 только что выпущен (по крайней мере, v3.12).

4. Попробовав это, я все равно получаю ту же ошибку.