Мое веб-приложение построено с использованием Spring-boot и Spring-Security.Когда я отправляю пост-запрос во встроенный / логин Spring-Security для аутентификации, я получаю ответ «Произошла непредвиденная ошибка (тип = Не найдено, статус = 404).».
SecurityConfig.java
@Configuration
@EnableWebSecurity
public class SecurityConfig extends WebSecurityConfigurerAdapter {
@Autowired
private ReaderRepository readerRepository;
@Override
protected void configure(HttpSecurity http) throws Exception {
http
.authorizeRequests()
.antMatchers("/readingList/**").access("hasRole('READER')")
.antMatchers("/**").permitAll()
.and()
.formLogin()
.loginPage("/myLogin")
.failureUrl("/myLogin?error=true");
}
@Override
protected void configure(AuthenticationManagerBuilder auth)
throws Exception {
auth
.userDetailsService(new UserDetailsService() {
@Override
public UserDetails loadUserByUsername(String username)
throws UsernameNotFoundException {
return readerRepository.findOne(username);
}
});
}
}
myLogin.html
<form name='f' th:action="@{/login}" method='POST'>
<table>
<tr>
<td>User:</td>
<td><input type='text' name='username' value='' /></td>
</tr>
<tr>
<td>Password:</td>
<td><input type='password' name='password' /></td>
</tr>
<tr>
<td colspan='2'><input name="submit" type="submit" value="Login" /></td>
</tr>
</table>
</form>
Я полагаю, что когда я запускаю веб-приложение, оно перенаправляет меня на myLogin.html.Когда я ввожу правильное имя пользователя и пароль в форму, отправляю в / login, некоторый фильтр безопасности Spring-security перехватывает запрос и обрабатывает аутентификацию, используя информацию об учетной записи, настроенную в классе SecurityConfig.Но я получаю ответ «Произошла непредвиденная ошибка (тип = Не найдено, статус = 404). Сообщение недоступно».