UnsatisfiedDependencyException Error creating bean with name

0 votes

 I'm trying to create a Spring CRUD application. I'm getting these errors:

org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'clientController': Unsatisfied dependency expressed through method 'setClientService' parameter 0; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'clientService': Unsatisfied dependency expressed through field 'clientRepository'; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type 'com.kopylov.repository.ClientRepository' available: expected at least 1 bean which qualifies as autowire candidate. Dependency annotations: {@org.springframework.beans.factory.annotation.Autowired(required=true)}

And this:

org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'clientService': Unsatisfied dependency expressed through field 'clientRepository'; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type 'com.kopylov.repository.ClientRepository' available: expected at least 1 bean which qualifies as autowire candidate. Dependency annotations: {@org.springframework.beans.factory.annotation.Autowired(required=true)}

ClientController:

@Controller
public class ClientController {
private ClientService clientService;

@Autowired
@Qualifier("clientService")
public void setClientService(ClientService clientService){
    this.clientService=clientService;
}
@RequestMapping(value = "registration/add", method = RequestMethod.POST)
public String addUser(@ModelAttribute Client client){
    this.clientService.addClient(client);
return "home";
}
}

ClientServiceImpl:

@Service("clientService")
public class ClientServiceImpl implements ClientService{

private ClientRepository clientRepository;

@Autowired
@Qualifier("clientRepository")
public void setClientRepository(ClientRepository clientRepository){
    this.clientRepository=clientRepository;
}



@Transactional
public void addClient(Client client){
    clientRepository.saveAndFlush(client);
}
}

ClientRepository:

public interface ClientRepository extends JpaRepository<Client, Integer> {

}

Can someone help me solve these errors?

May 21, 2022 in Java by Kichu
• 19,040 points
57,581 views


@Autowire =>  private ClientRepository clientRepository;

No answer to this question. Be the first to respond.

Your answer

Your name to display (optional):
Privacy: Your email address will only be used for sending these notifications.
0 votes

i had the same issues i solve it by adding the service package to xml configuration file

<!-- Add support for component scanning -->

<context:component-scan base-package="com.manage.customer.application,

com.manage.customer.dao,com.manage.customer.entity,com.manage.customer.service" />

answered Jun 24, 2022 by Rida

edited Mar 5, 2025
0 votes
The @Repository tag should be added to the client repository. Your current setup prevents Spring from scanning the class and learning about it. The Client Repository class will not be found at the time of booting and wiring. If this doesn't help you then try adding a @Service annotation to the ClientService (interface). You don't have to supply a name with the optional argument @Service because your service should only have one implementation ("clientService"). Using the name of the interface, Spring will automatically generate it.

I hope this helps you.
answered Jun 28, 2022 by narikkadan
• 86,360 points

edited Mar 5, 2025
0 votes
Annotate ClientRepository with @Repository