0
Hello, yesterday before giving a commit on the project I tested, and it worked normally. Today when I turned on the PC and tried to test it my sping was not initialized. Can you help me identify which error is this?
I will harvest down the classes and the error
ERROR THAT OCCURS:
[2m2020-11-08 12:49:16.170[0;39m [32m INFO[0;39m [35m2452[0;39m [2m---[0;39m [2m[ main][0;39m [36mc.a.w.WorkshopmongoApplication [0;39m [2m:[0;39m Starting WorkshopmongoApplication on DESKTOP-3LSAAI5 with PID 2452 (E:\temp\Spring Tools\Projetos\workshopmongo\target\classes started by Andre in E:\temp\Spring Tools\Projetos\workshopmongo)
[2m2020-11-08 12:49:16.173[0;39m [32m INFO[0;39m [35m2452[0;39m [2m---[0;39m [2m[ main][0;39m [36mc.a.w.WorkshopmongoApplication [0;39m [2m:[0;39m No active profile set, falling back to default profiles: default
[2m2020-11-08 12:49:16.716[0;39m [32m INFO[0;39m [35m2452[0;39m [2m---[0;39m [2m[ main][0;39m [36m.s.d.r.c.RepositoryConfigurationDelegate[0;39m [2m:[0;39m Bootstrapping Spring Data MongoDB repositories in DEFAULT mode.
[2m2020-11-08 12:49:16.765[0;39m [32m INFO[0;39m [35m2452[0;39m [2m---[0;39m [2m[ main][0;39m [36m.s.d.r.c.RepositoryConfigurationDelegate[0;39m [2m:[0;39m Finished Spring Data repository scanning in 45ms. Found 1 MongoDB repository interfaces.
[2m2020-11-08 12:49:17.114[0;39m [32m INFO[0;39m [35m2452[0;39m [2m---[0;39m [2m[ main][0;39m [36mo.s.b.w.embedded.tomcat.TomcatWebServer [0;39m [2m:[0;39m Tomcat initialized with port(s): 8080 (http)
[2m2020-11-08 12:49:17.122[0;39m [32m INFO[0;39m [35m2452[0;39m [2m---[0;39m [2m[ main][0;39m [36mo.apache.catalina.core.StandardService [0;39m [2m:[0;39m Starting service [Tomcat]
[2m2020-11-08 12:49:17.122[0;39m [32m INFO[0;39m [35m2452[0;39m [2m---[0;39m [2m[ main][0;39m [36morg.apache.catalina.core.StandardEngine [0;39m [2m:[0;39m Starting Servlet engine: [Apache Tomcat/9.0.39]
[2m2020-11-08 12:49:17.199[0;39m [32m INFO[0;39m [35m2452[0;39m [2m---[0;39m [2m[ main][0;39m [36mo.a.c.c.C.[Tomcat].[localhost].[/] [0;39m [2m:[0;39m Initializing Spring embedded WebApplicationContext
[2m2020-11-08 12:49:17.200[0;39m [32m INFO[0;39m [35m2452[0;39m [2m---[0;39m [2m[ main][0;39m [36mw.s.c.ServletWebServerApplicationContext[0;39m [2m:[0;39m Root WebApplicationContext: initialization completed in 952 ms
[2m2020-11-08 12:49:17.320[0;39m [33m WARN[0;39m [35m2452[0;39m [2m---[0;39m [2m[ main][0;39m [36mConfigServletWebServerApplicationContext[0;39m [2m:[0;39m Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'userResource': Unsatisfied dependency expressed through field 'service'; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'userService': Unsatisfied dependency expressed through field 'repo'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'userRepository' defined in com.andrediniz.workshopmongo.repository.UserRepository defined in @EnableMongoRepositories declared on MongoRepositoriesRegistrar.EnableMongoRepositoriesConfiguration: Cannot resolve reference to bean 'mongoTemplate' while setting bean property 'mongoOperations'; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'mongoTemplate' defined in class path resource [org/springframework/boot/autoconfigure/data/mongo/MongoDatabaseFactoryDependentConfiguration.class]: Unsatisfied dependency expressed through method 'mongoTemplate' parameter 0; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'mongoDatabaseFactory' defined in class path resource [org/springframework/boot/autoconfigure/data/mongo/MongoDatabaseFactoryConfiguration.class]: Unsatisfied dependency expressed through method 'mongoDatabaseFactory' parameter 0; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'mongo' defined in class path resource [org/springframework/boot/autoconfigure/mongo/MongoAutoConfiguration.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [com.mongodb.client.MongoClient]: Factory method 'mongo' threw exception; nested exception is java.lang.IllegalArgumentException: state should be: databaseName does not contain ' '
[2m2020-11-08 12:49:17.323[0;39m [32m INFO[0;39m [35m2452[0;39m [2m---[0;39m [2m[ main][0;39m [36mo.apache.catalina.core.StandardService [0;39m [2m:[0;39m Stopping service [Tomcat]
[2m2020-11-08 12:49:17.337[0;39m [32m INFO[0;39m [35m2452[0;39m [2m---[0;39m [2m[ main][0;39m [36mConditionEvaluationReportLoggingListener[0;39m [2m:[0;39m
Error starting ApplicationContext. To display the conditions report re-run your application with 'debug' enabled.
[2m2020-11-08 12:49:17.351[0;39m [31mERROR[0;39m [35m2452[0;39m [2m---[0;39m [2m[ main][0;39m [36mo.s.boot.SpringApplication [0;39m [2m:[0;39m Application run failed
Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'userRepository' defined in com.andrediniz.workshopmongo.repository.UserRepository defined in @EnableMongoRepositories declared on MongoRepositoriesRegistrar.EnableMongoRepositoriesConfiguration: Cannot resolve reference to bean 'mongoTemplate' while setting bean property 'mongoOperations'; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'mongoTemplate' defined in class path resource [org/springframework/boot/autoconfigure/data/mongo/MongoDatabaseFactoryDependentConfiguration.class]: Unsatisfied dependency expressed through method 'mongoTemplate' parameter 0; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'mongoDatabaseFactory' defined in class path resource [org/springframework/boot/autoconfigure/data/mongo/MongoDatabaseFactoryConfiguration.class]: Unsatisfied dependency expressed through method 'mongoDatabaseFactory' parameter 0; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'mongo' defined in class path resource [org/springframework/boot/autoconfigure/mongo/MongoAutoConfiguration.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [com.mongodb.client.MongoClient]: Factory method 'mongo' threw exception; nested exception is java.lang.IllegalArgumentException: state should be: databaseName does not contain ' '
My Class Domain - User
package com.andrediniz.workshopmongo.domain;
import java.io.Serializable;
import org.springframework.data.annotation.Id;
import org.springframework.data.mongodb.core.mapping.Document;
@Document(collection="user")
public class User implements Serializable {
private static final long serialVersionUID = 1L;
@Id
private String id;
private String name;
private String email;
public User() {
}
public User(String id, String name, String email) {
super();
this.id = id;
this.name = name;
this.email = email;
}
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
@Override
public int hashCode() {
final int prime = 31;
int result = 1;
result = prime * result + ((id == null) ? 0 : id.hashCode());
return result;
}
@Override
public boolean equals(Object obj) {
if (this == obj)
return true;
if (obj == null)
return false;
if (getClass() != obj.getClass())
return false;
User other = (User) obj;
if (id == null) {
if (other.id != null)
return false;
} else if (!id.equals(other.id))
return false;
return true;
}
}
Class Repository Userrepository
package com.andrediniz.workshopmongo.resources;
import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RestController;
import com.andrediniz.workshopmongo.domain.User;
import com.andrediniz.workshopmongo.services.UserService;
@RestController
@RequestMapping(value = "/users")
public class UserResource {
@Autowired
private UserService service;
@RequestMapping(method=RequestMethod.GET)
public ResponseEntity <List<User>> findAll(){
List<User> list = service.findAll();
return ResponseEntity.ok().body(list);
}
}
Userresource class
package com.andrediniz.workshopmongo.resources;
import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RestController;
import com.andrediniz.workshopmongo.domain.User;
import com.andrediniz.workshopmongo.services.UserService;
@RestController
@RequestMapping(value = "/users")
public class UserResource {
@Autowired
private UserService service;
@RequestMapping(method=RequestMethod.GET)
public ResponseEntity <List<User>> findAll(){
List<User> list = service.findAll();
return ResponseEntity.ok().body(list);
}
}
Userservice class
package com.andrediniz.workshopmongo.services;
import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.andrediniz.workshopmongo.domain.User;
import com.andrediniz.workshopmongo.repository.UserRepository;
@Service
public class UserService {
@Autowired
private UserRepository repo;
public List<User> findAll(){
return repo.findAll();
}
}
Class Application Properties
spring.data.mongodb.uri=mongodb://localhost:27017/workshop_mongo
POM XML
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.3.5.RELEASE</version>
<relativePath /> <!-- lookup parent from repository -->
</parent>
<groupId>com.andrediniz</groupId>
<artifactId>workshopmongo</artifactId>
<version>0.0.1-SNAPSHOT</version>
<name>workshopmongo</name>
<description>Workshop Sping Boot com MongoDB</description>
<properties>
<java.version>1.8</java.version>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-mongodb</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
<exclusions>
<exclusion>
<groupId>org.junit.vintage</groupId>
<artifactId>junit-vintage-engine</artifactId>
</exclusion>
</exclusions>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
</project>
looking at Exception Illegalargumentexception: state should be: databaseName does not contain ' ' indicates that something is wrong with its connection string in the application properties, check if this is how it is filled
– Lucas Miranda