NullPointerException @Autowired Mongodb collection - PullRequest
0 голосов
/ 05 марта 2020

У меня есть класс конфигурации для коллекций MongoDB, например:

      @Configuration
      public class MongoDBConfiguration{

         @Bean
         public MongoCollection<Document> collection() {


            MongoClient mongoClient = MongoClients.create(mongoURI);
            MongoDatabase database = mongoClient.getDatabase(mongoDatabase);
            return database.getCollection(mongoCollection);
         }
      }

Затем у меня есть другой класс, где я хочу использовать эту коллекцию. В этом классе я получаю NullPointerException.

    @Component
    public class ExampleClass {

        @Autowired
        private MongoCollection<Document> collection;

        public void getUser(String userID){

                userDoc = collection.find(eq("id", userID)).first();

                /*some other logic*/

        }
    }

И затем у меня есть этот класс, где я хочу его назвать.

    @Service
    public class RepeatEvent {

        @Autowired
        MongoCollection<Document> collection;

        @Autowired
        ExampleClass exampleClass;

        @Scheduled(fixedRate = 20000)
        public void repeatEvent() {

            exampleClass.getUser(userID);

            /*some more logic*/

        }
    }

Если я использую коллекцию в этом последнем классе, я не у меня нет проблем, но на ExcampleClass я делаю. Что я делаю не так?

...