I have this structure
project (module.pom)
- connection (module.jar)
- src/main/java
-com.mycompany.connection
-connectionBD.class
- ...
- pom.xml
- person (module.jar)
- src/main/java
- com.mycompany.person
-personApplication.class
- com.mycompany.person.controller
-...
- com.mycompany.person.model
-...
- src/main/resources
- ...
- pom.xml
pom.xml
my connectionBD.class class is this.
@Configuration
public class connectionBD {
@Bean
public MongoDatabaseFactory mongoDatabaseFactory(){
return new SimpleMongoClientDatabaseFactory("mongo://localhost:27017/lydsam");
}
@Bean
public MongoTemplate mongoTemplate() {
return new MongoTemplate(mongoDatabaseFactory());
}
}
and my PersonApplication.class class that is in another module.
@SpringBootApplication(scanBasePackages = { "com.mycompany.person", "com.mycompany.connection" })
public class PersonApplication {
public static void main(String[] args) {
try {
SpringApplication.run(PersonApplication.class, args);
} catch (Exception e) {
System.out.println("Error: "+ e.getMessage());
}
}
}
When I run the project, I get an error saying that my connection to my database is wrong and I don't know what the problem is. Somebody could help me.
Error message
nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'mongoTemplate' defined in class path resource [com/mycompany/connection/connectionBD.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.springframework.data.mongodb.core.MongoTemplate]: Factory method 'mongoTemplate' threw exception; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'mongoDatabaseFactory' defined in class path resource [com/mycompany/connection/connectionBD.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.springframework.data.mongodb.MongoDatabaseFactory]: Factory method 'mongoDatabaseFactory' threw exception; nested exception is java.lang.IllegalArgumentException: The connection string is invalid. Connection strings must start with either 'mongodb://' or 'mongodb+srv://
connectionDBclass/configuration and let Spring Boot do it. Just add thespring.data.mongodb.uri=<your-config-url>and Spring Boot will set things up for you. See docs.spring.io/spring-boot/docs/current/reference/html/…