समाधान शुद्ध वसंत MVC का उपयोग कर, sevlet context.xml
<mvc:interceptors>
<bean class="com.xxx.SessionHandler" />
</mvc:interceptors>
हैंडलर एडाप्टर
@Component
public class SessionHandler extends HandlerInterceptorAdapter {
@Override
public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
request.getSession().setMaxInactiveInterval(60*60);
return true;
}
}
आप वसंत सुरक्षा का उपयोग कर रहे मानते हुए,
प्रत्येक सफल प्रवेश के लिए मुझे लगता है कि सबसे अच्छा तरीका है LoginSuccessHandler
बनाने के लिए और सामान्य लॉगिन के साथ-साथ मुझे याद रखने के लिए प्रमाणीकरण-सफलता-हैंडलर निर्दिष्ट करें।
@Service
public class LoginSuccessHandler extends SavedRequestAwareAuthenticationSuccessHandler {
@Override
public void onAuthenticationSuccess(
HttpServletRequest request,
HttpServletResponse response,
Authentication authentication) throws ServletException, IOException {
request.getSession().setMaxInactiveInterval(60*60);
super.onAuthenticationSuccess(request, response, authentication);
}
}
<http auto-config="true" use-expressions="true">
<form-login login-page="/login"
authentication-failure-url="/login.hst?error=true"
**authentication-success-handler-ref="loginSucessHandler"** />
<logout invalidate-session="true" logout-success-url="/home" logout-url="/logout" />
<remember-me key="jbcp" **authentication-success-handler-ref="loginSucessHandler"**/>
<session-management>
<concurrency-control max-sessions="1" />
</session-management>
</http>
स्रोत
2012-08-23 04:27:41
मैं इसे भी जानना चाहता हूं। जब मैं इस माध्यम से चला गया, * केवल * जिस तरह से मैं इसे बदल सकता था वह web.xml (या server.xml) में सेटिंग के साथ था। – nickdos
setMaxInactiveInterval के साथ क्या गलत है, क्या यह सर्वलेट एपीआई का हिस्सा नहीं है? कुछ वसंत सुरक्षा उपकरण उदाहरण के लिए सीधे session.invalidate पर कॉल करते हैं, और इसके साथ कोई समस्या नहीं है। –
@ BorisTreukhov इसमें कुछ भी गलत नहीं है। यह आखिरी विकल्प है। मैं बस यह सुनिश्चित करना चाहता हूं कि कॉन्फ़िगरेशन फ़ाइल या कुछ में निर्दिष्ट करने जैसा कोई अन्य विकल्प है। – JProgrammer