2016-03-29 6 views
0

Web sunucum var ve Spring Security kullanıyorum.Spring Security.config - Çalışmak için giriş sayfası alınamıyor

@Override 
protected void configure(HttpSecurity http) throws Exception { 

    http 
     .csrf().disable() 
     .authorizeRequests() 
      .antMatchers("/static/**").permitAll() 
      .antMatchers("/settings/api/**").permitAll() 
      .antMatchers("/api/**").permitAll() 
      .anyRequest().authenticated() 
     .and() 
     .formLogin() 
      .loginPage("/login").permitAll() 
      .defaultSuccessUrl("/", true); 
} 

Ben bu her zaman @RequestMapping(value="/login", method=RequestMethod.GET) yerine @RequestMapping(value="/login", method=RequestMethod.POST) eşleştirilmiş alır edilir yaşıyorum sorunu: Ben security.config benim Bahar Güvenlik configure fonksiyonu var. Bu yüzden Http Request'den kullanıcı adı ve parola almaya çalıştığımda, null olarak çıkıyor. POST yöntemini eşlemek için nasıl alabilirim?

Ben formlogin ile

@RequestMapping(value="/login", method=RequestMethod.POST) 
public String login(HttpServletRequest request, HttpServletResponse response) { 
    String username = request.getParameter("username"); 
    String password = request.getParameter("password"); 
    boolean f = false; 
    f = customAuthenticationProvider.verifyUser(username,password,request); 
    if(f == false) 
     return "loginError"; 
    else 
     return "index"; 
} 

cevap

0

() o UsernamePasswordAuthenticationFilter üzerine yay tarafından halledilir ediliyor, POST denetleyicisi sağlamak gerekmez olarak benim sonrası denetleyicisi var. Yapılandırdığınız şey, yalnızca "/ login" e POST eylemi içeren bir form eklemeniz ve kullanıcı adı ve şifre girişi eklemeniz gereken loginPage ("/ login"). Böyle

şey: Eğer ben bu yüzden çalışacak ne önerdi sanmıyorum içinden bir işlev arıyorum gördüğünüz gibi

<form action="login" method="post"> 
    <div> 
     <label for="username">Username:</label> 
     <input type="text" class="form-control" id="username" name="username"/> 
    </div> 
    <div> 
     <label for="password">Password:</label> 
     <input type="password" class="form-control" id="password" name="password"/> 
    </div> 
    <button type="submit">Submit</button> 
</form> 
+0

ben sadece benim sonrası denetleyici eklendi. Ben çok yeni bu yüzden herhangi bir yardım güzel olurdu.Teşekkürler –

+0

Size şunu söyleyin, şuna bir bakın: http://docs.spring.io/spring-security/site/docs/3.2.x/guides/ form.html – Ulises

+0

Teşekkürler. Yine de çalışmıyor. belki başka bir yerde bir sorunum var. Bulduğumda güncelleyeceğim. –