Моя структура проекта такова:
Тело моей страницы входа в систему выглядит следующим образом
<body>
<P id="errors"></P>
<p>Login Details</p>
<div id = "page"></div>
<table>
<tr>
<td> Login ID :</td>
<td><input type="number" id="loginid" min="1" max="200" style="width:169px;"/></td>
</tr>
<tr>
<td> Passowrd :</td>
<td><input type="password" id="password"/></td>
<tr>
</table>
<button id="loginB" onclick="login()">submit</button>
</body>
После успешного входа в системуЯ хотел бы перейти от loginPage.jsp к home.jsp, используя JavaScript или Ajax.Мой код:
function login()
{
var name = document.getElementById("loginid").value;
var password = document.getElementById("password").value;
var url="/loginPage?name="+name+"&password="+password;
var xhttp = new XMLHttpRequest();
xhttp.onreadystatechange = function() {
if (this.readyState == 4 && this.status == 200) {
var responsetext=xhttp.responseText;
var parsedresult=JSON.parse(responsetext);
if(parsedresult.success==true)
{
window.location="home.jsp";
}
else
{
document.getElementById("errors").innerHTML=parsedresult.message;
}
}
};
xhttp.open("POST",url,true);
xhttp.send();
}
Он не переходит на home.jsp и выдает ошибку 404.Как настроить его для перехода на home.jsp?
Мой логин API заключается в следующем.LoginModel имеет жестко закодированные имя пользователя и пароль, которые используются для проверки.Loginmodel.validate () вернет строку «false», если учетные данные неверны.
@Controller
public class LoginController {
LoginModel loginmodel = new LoginModel();
@RequestMapping(value="/")
public ModelAndView redirect(HttpServletRequest request, HttpServletResponse response) throws IOException
{
return new ModelAndView("loginPage");
}
@RequestMapping(value="/loginPage",method=RequestMethod.POST)
public void login(HttpServletRequest request, HttpServletResponse response)
throws IOException {
String sessionName = loginmodel.validate(request.getParameter("name"), request.getParameter("password"));
if(!sessionName.equals("false"))
{
HttpSession session = request.getSession();
session.setAttribute("name", sessionName);
JSONObject result= new JSONObject();
result.put("success", true);
response.setContentType("application/json");
response.getWriter().print(result);
}
else
{ JSONObject result= new JSONObject();
result.put("success", false);
result.put("message", "invalid credentials");
response.setContentType("application/json");
response.getWriter().print(result);
}
}
@RequestMapping(value="/logout")
public String logout(HttpServletRequest request, HttpServletResponse response) throws IOException
{
request.getSession().invalidate();
return "loginPage";
}
}