Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/410.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用javascript/ajax调用访问SpringMVC项目中/WEB-INF/中单独文件夹下的jsp文件?_Javascript_Java_Jsp_Spring Mvc_Servlets - Fatal编程技术网

如何使用javascript/ajax调用访问SpringMVC项目中/WEB-INF/中单独文件夹下的jsp文件?

如何使用javascript/ajax调用访问SpringMVC项目中/WEB-INF/中单独文件夹下的jsp文件?,javascript,java,jsp,spring-mvc,servlets,Javascript,Java,Jsp,Spring Mvc,Servlets,我的项目结构如下: 我的登录页面主体如下 <body> <P id="errors"></P> <p>Login Details</p> <div id = "page"></div> <table> <tr> <td> Login ID :</td> <td><in

我的项目结构如下:

我的登录页面主体如下

<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>
它不会转到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";
      }

}

请在controller中编写一个返回home.jsp页面的方法,如下所示:

@RequestMapping(value="/home")
public String logout(HttpServletRequest request, HttpServletResponse response) throws IOException
{
    return "home";
}
然后从jsp页面:


window.location=“contextPath/home”

您可以发布您的登录API代码。您是否尝试过此窗口。location=“/WEB\u INF/views/home.jsp”;是的,Sudhiroja,没用
@RequestMapping(value="/home")
public String logout(HttpServletRequest request, HttpServletResponse response) throws IOException
{
    return "home";
}