Estou recriando o projeto para o bytebank.
Ao tentar fazer a consult com filtros, obtive o seguinte erro:
error starting ApplicationContext. To display the conditions report re-run your application with 'debug' enabled.
2021-10-22 02:07:48.108 ERROR 20152 --- [ main] o.s.boot.SpringApplication : Application run failed
org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'contaController': Unsatisfied dependency expressed through field 'contaRepository'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'contaRepository' defined in br.com.joao.banco.repository.ContaRepository defined in @EnableJpaRepositories declared on JpaRepositoriesRegistrar.EnableJpaRepositoriesConfiguration: Invocation of init method failed; nested exception is org.springframework.data.repository.query.QueryCreationException: Could not create query for public abstract java.util.List br.com.joao.banco.repository.ContaRepository.findByClienteNome(java.lang.String)! Reason: Failed to create query for method public abstract java.util.List br.com.joao.banco.repository.ContaRepository.findByClienteNome(java.lang.String)! No property clienteNome found for type Conta!; nested exception is java.lang.IllegalArgumentException: Failed to create query for method public abstract java.util.List br.com.joao.banco.repository.ContaRepository.findByClienteNome(java.lang.String)! No property clienteNome found for type Conta!
Aqui estão minhas classes:
package br.com.joao.banco.controller;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController;
import java.util.List;
import br.com.joao.banco.controller.dto.ContaDto; import br.com.joao.banco.modelo.Conta; import br.com.joao.banco.repository.ContaRepository;
@RestController public class ContaController {
@Autowired
private ContaRepository contaRepository;
@RequestMapping("/contas")
public List<ContaDto> lista(String nomeCliente){
if(nomeCliente == null) {
List<Conta> contas = contaRepository.findAll();
return ContaDto.converter(contas);
} else {
List<Conta> contas = contaRepository.findByClienteNome(nomeCliente);
return ContaDto.converter(contas);
}
}
}
package br.com.joao.banco.repository;
import java.util.List;
import org.springframework.data.jpa.repository.JpaRepository;
import br.com.joao.banco.modelo.Conta;
public interface ContaRepository extends JpaRepository<Conta, Long>{
List<Conta> findByClienteNome(String nomeCliente);
Poderia me ajudar?