2017-06-12 93 views
1

我想在我的welcomePage.jsp页面上引用其他jsp页面 - loginPage.jsp和registerPage.jsp。我试图用这样简单:如何在另一个jsp页面上引用一个jsp页面?

<head> 
<title>${title}</title> 
</head> 
<body> 
    <jsp:include page="header.jsp"/>  
    <jsp:include page="_menu.jsp" /> 

    <h1>Welcome to the page!</h1> 
    <a href="registerPage.jsp">Register</a>   
    <p>or</p> 
    <a href="loginPage.jsp">Log In</a> 
    <p>if you already have an account</p> 

    <jsp:include page="footer.jsp"/> 
</body> 
</html> 

但我总是得到HTTP状态404请求的资源不可用。

我也尝试过,但结果是我引用的页面的内容也只是在这个welcomePage上显示。虽然我需要他们只能通过链接访问。 所有提到的文件都位于WEB-INF /页面中。 这是我第一个使用Spring MVC的项目,因此欢迎任何帮助。

+0

Spring MVC中的URL可能不同,所以尽量使用JSTL标签或使用Apache瓷砖 –

回答

2

假设在您的配置中,您已设置视图的位置,例如, /WEB-INF/view/在那里你把所有的.jsp文件 - loginpage.jsp, registerPage.jsp等现在,你可以通过pageContext.servletContext.contextPath简单地访问视图的位置,即/WEB-INF/view/

//For example 
href="${pageContext.servletContext.contextPath}/loginpage" 
0

我建议你先去控制器,而不是在这个控制器中调用ModelAndView。这也保持了JSP文件之间的关系清晰。

若要将此您的控制器类应该是这样的:

@Controller 
public class LoginPageController { 
    @RequestMapping(value = "/login", method = RequestMethod.GET) 
    public ModelAndView printLoginPage() { 
     ModelAndView modelAndView = new ModelAndView("loginPage"); 
     return modelAndView; 
    } 
} 

您可以从一个JSP页面通过控制器方法会也将参数传递到另一个。

+0

谢谢!我会试试这个。 –

+0

非常欢迎你,我希望这将解决您的问题! @ dark_matter88 – ahmetcetin

相关问题