Я пытаюсь протестировать авторизацию OAuth 2.0 с помощью Postman, если я правильно ее реализовал.
Я посылаю этот почтальон в ответ на ожидаемый токен
http://localhost:8080/oauth/token/grant_type=password&username=user&password=user
Но у меня есть ошибка в этой части кода:
@SpringBootApplication
public class KamehouseApplication {
public static void main(String[] args) {
SpringApplication.run(KamehouseApplication.class, args);
}
@Autowired
public void configure(AuthenticationManagerBuilder auth, UserRepository repo, User user) throws Exception {
if (repo.count() == 0)
user = (new User("user", // username
"user", // password
Arrays.asList(new Role("USER"), new Role("ACTUATOR"))));// roles
repo.save(user);
auth.userDetailsService(s -> new CustomUserDetails(repo.findByUsername(s)));
}
}
Часть, которая подчеркнута красным:
Arrays.asList(new Role("USER"), new Role("ACTUATOR"))));
Говоря
The method asList(T...) in the type Arrays is not applicable for the arguments (Role, Role)
Это мой класс пользователя
@Entity
@Table(name = "user")
public class User {
@Id
@GeneratedValue
public int id;
public String firstname;
public String lastname;
public String username;
public String password;
@OneToMany(fetch = FetchType.EAGER, cascade = CascadeType.ALL)
private List<Role> roles;
public User() {
}
//Getters/Setters