Jsp 自定义登录在Spring中不起作用
我们正在尝试创建自定义登录页面。我们的配置方法如下所示Jsp 自定义登录在Spring中不起作用,jsp,spring-mvc,spring-security,Jsp,Spring Mvc,Spring Security,我们正在尝试创建自定义登录页面。我们的配置方法如下所示 @Override protected void configure(HttpSecurity http) throws Exception { //http.csrf().disable().formLogin();UserDetailsService http.csrf().disable().formLogin().loginPage("/login"); } 我们使用UserDet
@Override
protected void configure(HttpSecurity http) throws Exception {
//http.csrf().disable().formLogin();UserDetailsService
http.csrf().disable().formLogin().loginPage("/login");
}
我们使用UserDetailsService类来存储用户数据
@Autowired
private UserDetailsService userDetailsService;
我们已经在Web Inf/views文件夹结构下创建了login.jsp。现在,若尝试点击登录页面,我们将在控制台中得到如下错误
“web.servlet.PageNotFound:1120-在名为'spring'的DispatcherServlet中找不到URI为[/login]的HTTP请求的映射。”
我是Spring框架的新手,谁能帮我找到哪里出了问题
下面我粘贴了完整的SecurityConfig类代码
@Configuration
@EnableWebSecurity
@EnableGlobalMethodSecurity(securedEnabled = true)
public class SecurityConfig extends WebSecurityConfigurerAdapter {
@Autowired
private UserDetailsService userDetailsService;
@Autowired
public void configureGlobal(AuthenticationManagerBuilder auth) throws Exception {
auth.userDetailsService(userDetailsService);
}
@Bean(name = "authMgr")
@Override
public AuthenticationManager authenticationManagerBean() throws Exception {
return super.authenticationManagerBean();
}
@Override
protected void configure(HttpSecurity http) throws Exception {
//http.csrf().disable().formLogin();
http.csrf().disable().formLogin().loginPage("/login");
}
}
可能对某些人有帮助。问题是我不能说spring应该在哪里搜索jsp文件。在WebMVCConfigureAdapter类中提供了以下方法之后,自定义登录工作正常
@Bean
public InternalResourceViewResolver jspViewResolver() {
InternalResourceViewResolver jspViewResolver = new InternalResourceViewResolver();
jspViewResolver.setViewClass(org.springframework.web.servlet.view.JstlView.class);
jspViewResolver.setRedirectHttp10Compatible(false);
jspViewResolver.setPrefix("/WEB-INF/views/");
jspViewResolver.setSuffix(".jsp");
jspViewResolver.setOrder(2);
return jspViewResolver;
}
你有控制器吗?没有用于登录的控制器。我在WebMVCConfigureAdapter扩展类中提供了jspViewResolver,现在我的自定义登录工作了