Параметру 0 метода setUserService в пакете требуется компонент типа другой пакет - PullRequest
0 голосов
/ 30 декабря 2018

этот код не содержит ошибок, но при запуске он выдает мне эту ошибку: Описание:

Параметру 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);

}

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...