我试图通过Spring数据JPA将用户数据保存在数据库上。不幸的是,当我在我的控制器类中调用RegistrazioneService时,它将为空。弹簧数据JPA - 服务始终为空
registrazioneController.java:这是一个正常的JSF控制器...
@ManagedBean(name="registrazioneController")
@ViewScoped
public class RegistrazioneController {
private String username = "";
private String password = "";
private String repassword = "";
private String email;
@ManagedProperty(value = "#{registrazioneService}")
private RegistrazioneService registrazioneService;
public void registraUser() {
System.out.println("inizio registrazione utente...");
// si salva nel db il nuovo utente
User utente = new User();
utente.setUsername(username);
utente.setPassword(password);
utente.setEmail(email);
utente.setDataCreazione(new Date());
// di default si assegna all'utente il ruolo ROLE_USER
utente.setRole(Role.ROLE_USER);
registrazioneService.registraUtente(utente);
}
RegistrazioneService:
@Service
public class RegistrazioneService {
@Autowired
UserRepository userRespository;
@Transactional
public void registraUtente(User user) {
System.out.println(("sono in registraUtente()"));
userRespository.save(user);
}
}
,这就是UserRepository:
@Repository
public interface UserRepository extends CrudRepository<User, Long> {
}
有人能帮助我吗?
将'setRegistrazioneService'添加到您的控制器。 –
你可以仔细检查你导入的@ @ Service'注释吗?是来自'org.jvnet.hk2.annotations'还是'org.springframework.stereotype'包? – harshavmb