этот код не содержит ошибок, но при запуске он выдает мне эту ошибку: Описание:
Параметру 0 метода setUserService в com.pardis.server.bootstrap.SpringJpaBootstrap требуется компонент типа 'com.pardis.server.services.UserService ', который не найден.
Действие:
Рассмотрите возможность определения bean-компонента типа' com.pardis.server.services.UserService 'в вашей конфигурации.
SpringJpaBootstrapclass:
@Component
public class SpringJpaBootstrap implements ApplicationListener<ContextRefreshedEvent> {
private UserService userService;
private RoleService roleService;
private Logger log = Logger.getLogger(SpringJpaBootstrap.class);
@Autowired
public void setUserService(UserService userService) {
this.userService = userService;
}
@Autowired
public void setRoleService(RoleService roleService) {
this.roleService = roleService;
}
@Override
public void onApplicationEvent(ContextRefreshedEvent event) {
loadUsers();
loadRoles();
assignUsersToUserRole();
assignUsersToAdminRole();
}
private void loadUsers() {
User user1 = new User();
user1.setUsername("user");
user1.setPassword("user");
userService.saveOrUpdate(user1);
User user2 = new User();
user2.setUsername("admin");
user2.setPassword("admin");
userService.saveOrUpdate(user2);
}
private void loadRoles() {
Role role = new Role();
role.setRole("USER");
roleService.saveOrUpdate(role);
log.info("Saved role" + role.getRole());
Role adminRole = new Role();
adminRole.setRole("ADMIN");
roleService.saveOrUpdate(adminRole);
log.info("Saved role" + adminRole.getRole());
}
private void assignUsersToUserRole() {
List<Role> roles = (List<Role>) roleService.listAll();
List<User> users = (List<User>) userService.listAll();
roles.forEach(role -> {
if (role.getRole().equalsIgnoreCase("USER")) {
users.forEach(user -> {
if (user.getUsername().equals("user")) {
user.addRole(role);
userService.saveOrUpdate(user);
}
});
}
});
}
private void assignUsersToAdminRole() {
List<Role> roles = (List<Role>) roleService.listAll();
List<User> users = (List<User>) userService.listAll();
roles.forEach(role -> {
if (role.getRole().equalsIgnoreCase("ADMIN")) {
users.forEach(user -> {
if (user.getUsername().equals("admin")) {
user.addRole(role);
userService.saveOrUpdate(user);
}
});
}
});
}
}
класс userService:
package com.pardis.server.services;
import com.pardis.server.model.User;
public interface UserService extends CRUDService<User> {
User findByUsername(String username);
}
Класс CRUDservice:
пакет com.pardis.server.services;
import java.util.List;
открытый интерфейс CRUDService {List listAll ();
T getById(Integer id);
T saveOrUpdate(T domainObject);
void delete(Integer id);
}