Używam Spring Web MVC i Hibernate do rozwijania mojej aplikacji.Zwróć ten sam kontroler widoku przy użyciu ModelAndView z Spring Web MVC
Moja strona login.jsp został podany kod:
<form:form method="post" commandName="User">
User Name :
<form:input path="email"/>
Password :
<form:input path="password"/>
<input type="submit" align="center" value="Execute">
Teraz mój plik servlet.xml został następujący kod:
<bean name="/uservalidate.htm" class="com.sufalam.mailserver.presentation.web.UserValidateFormController">
<property name="sessionForm" value="true"/>
<property name="commandName" value="User"/>
<property name="commandClass" value="com.sufalam.mailserver.bean.User"/>
<property name="formView" value="login"/>
<property name="successView" value="layout.jsp"/>
<property name="userSecurityProcessor" ref="IUserSecurityProcessor"/>
</bean>
Moja UserValidateFormController został następujący kod:
public class UserValidateFormController extends SimpleFormController {
/** Logger for this class and subclasses */
protected final Log logger = LogFactory.getLog(getClass());
private IUserSecurityProcessor userSecurityProcessor;
public ModelAndView onSubmit(Object command)
throws ServletException, SufalamException {
ModelAndView mav = new ModelAndView();
Map model = new HashMap();
String username = ((User) command).getEmail();
String password = ((User) command).getPassword();
List userChecking = new ArrayList();
userChecking = userSecurityProcessor.findByAll(username, password, 0.0);
System.out.println("userChecking length = "+userChecking.size());
if (userChecking.size() == 1) {
return new ModelAndView("layout");
//return new ModelAndView(new RedirectView(getSuccessView()));
}
return new ModelAndView("login", model);
}
protected Object formBackingObject(HttpServletRequest request) throws ServletException {
User user = new User();
return user;
}
public void setUserSecurityProcessor(IUserSecurityProcessor userSecurityProcessor) {
this.userSecurityProcessor = userSecurityProcessor;
}
W moim UserValidateFormController w momencie przekazania zdarzenia submit sprawdzam nazwę użytkownika i hasło d są poprawne lub nie ..
Działa dobrze &, jeśli oba pasują do siebie, a następnie przekierowanie do layout.jsp, to również dobrze.
Ale jeżeli nazwa użytkownika lub hasło są błędne chcę przekierować do tej samej strony login.jsp i wyświetli odpowiedni błąd ..
Proszę mi zaproponować rozwiązanie, które co zrobić przekierowanie do samego kontrolera widoku ..
góry dzięki ..
... jeśli nie masz nic przeciwko pytaniu, czy masz problemy z używaniem Springa, czy jest jakiś szczególny powód, dla którego przenosisz swój własny środek bezpieczeństwa, zamiast implementować Acegi (lub Sprint Security, jak się nazywa teraz) ? – vector
Ya, użyłem ACEGI i bardzo dobrze o tym wiem ... Ale mój obecny system nie wymaga tak dużego obciążenia .. To pytanie jest tylko podstawowymi koncepcjami wiosennymi, w jaki sposób mogę przekierować na tę samą stronę JSP zwaną JSP , kontroler .. – Nirmal
... wystarczająco dobry. – vector