2015-01-22 10 views
6

मैं अपने आवेदन में स्प्रिंग सुरक्षा कस्टम लॉगिन (जावा कॉन्फ़िगर) जोड़ने की कोशिश कर रहा हूं, लेकिन एक अजीब त्रुटि पॉप-अप रहती है।वसंत सुरक्षा कस्टम लॉगिन त्रुटि

मैं Creating a Custom Login Form tutorial से गुजर चुका हूं और यह ठीक काम करता है। मुझे यकीन नहीं है कि मेरे आवेदन के साथ क्या समस्या है।

त्रुटि

की वजह से: java.lang.IllegalArgumentException: '? के लिए लॉग इन त्रुटि' एक मान्य रीडायरेक्ट URL नहीं है

सुरक्षा कॉन्फ़िग

@Configuration 
@EnableWebSecurity 
public class SecurityConfig extends WebSecurityConfigurerAdapter { 
    @Autowired 
    public void configure(AuthenticationManagerBuilder auth) 
      throws Exception { 
     auth 
     .inMemoryAuthentication() 
      .withUser("user").password("password").roles("USER"); 
    } 

    @Override 
    protected void configure(HttpSecurity http) throws Exception { 
     http.authorizeRequests().antMatchers("/", "/about").permitAll(); 
     http 
     .authorizeRequests() 
     .antMatchers("/admin","/admin/**").hasRole("ADMIN") 
     .anyRequest().authenticated() 
     .and() 
     .formLogin() 
     .loginPage("login") 
     .permitAll(); 
    } 
} 

लॉगि nController

@Controller 
public class LoginController { 

    @RequestMapping(value = "login", method = RequestMethod.GET) 
    public String loginView() { 
     return "login"; 
    } 

    @RequestMapping(value = "login", method = RequestMethod.POST) 
    public String login(@ModelAttribute Login login) { 
     return "home"; 
    } 
} 

बस विधि configure(HttpSecurity http) टिप्पणी अपवाद को हटा। मैंने RequestMapping मूल्य login?error के साथ जोड़ने का प्रयास किया, लेकिन इससे मदद नहीं मिली। मुझे यहां क्या समझ नहीं आ रहा है?

Link to complete stack trace

उत्तर

11

आपका एक स्लेश याद कर रहे हैं।

यह:

 .loginPage("login") 

होना चाहिए:

 .loginPage("/login") 
+0

खैर, स्लैश बाहर छोड़ दिया है क्योंकि मेरी नियंत्रक एक 'की RequestMapping' है" के लिए लॉग इन ""/के लिए लॉग इन 'के बजाय – ItachiUchiha

+0

@ItachiUchiha '@ RequestMapping' मान भी'/'से शुरू होना चाहिए। – holmis83

+0

यह अनिवार्य है? वसंत-सुरक्षा जोड़ने से पहले, सबकुछ ठीक से '/' के बिना ठीक काम करता था – ItachiUchiha

संबंधित मुद्दे