मैं अपने आवेदन में स्प्रिंग सुरक्षा कस्टम लॉगिन (जावा कॉन्फ़िगर) जोड़ने की कोशिश कर रहा हूं, लेकिन एक अजीब त्रुटि पॉप-अप रहती है।वसंत सुरक्षा कस्टम लॉगिन त्रुटि
मैं 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
के साथ जोड़ने का प्रयास किया, लेकिन इससे मदद नहीं मिली। मुझे यहां क्या समझ नहीं आ रहा है?
खैर, स्लैश बाहर छोड़ दिया है क्योंकि मेरी नियंत्रक एक 'की RequestMapping' है" के लिए लॉग इन ""/के लिए लॉग इन 'के बजाय – ItachiUchiha
@ItachiUchiha '@ RequestMapping' मान भी'/'से शुरू होना चाहिए। – holmis83
यह अनिवार्य है? वसंत-सुरक्षा जोड़ने से पहले, सबकुछ ठीक से '/' के बिना ठीक काम करता था – ItachiUchiha