@Configuration
@EnableWebSecurity
public class WebSecurityConfig extends WebSecurityConfigurerAdapter {
...
@Override
protected void configure(HttpSecurity http) throws Exception {
http
.authorizeRequests()
.antMatchers("/css/**", "/js/**", "/img/**").permitAll()
.anyRequest().authenticated()
.and()
.formLogin()
.loginPage("/login")
.loginProcessingUrl("/login")
.failureForwardUrl("/login?error")
.successForwardUrl("/admin")
.permitAll()
.and()
.logout()
.logoutSuccessUrl("/login?logout")
.permitAll();
}
}
выше WebSecurityConfig
работает только при отображении со следующим классом:@Controller аннотаций не правильно отображение Spring Security страницы 4 входа
@Configuration
public class MvcConfig extends WebMvcConfigurerAdapter {
@Override
public void addViewControllers(ViewControllerRegistry registry) {
registry.addViewController("/login").setViewName("login");
}
}
Когда я пытаюсь и заменить выше отображение с помощью контроллера, запрос Логин не обрабатывается должным образом и получить следующую ошибку:
ERROR 290168 --- [nio-8080-exec-1] o.a.c.c.C.[.[.[/].[dispatcherServlet] : Servlet.service() for servlet dispatcherServlet threw exception
Вот что мой контроллер выглядит :
@Controller
public class AdminController extends BaseController {
@RequestMapping(value = "/login")
public String login(Model model) {
return "login";
}
}
Любая идея, почему отображение AdminController
запрос не работает, а WebMvcConfigurerAdapter
отображение делает?